Files
Aether/docker-compose.example.yml
T
HoneyandClaude Opus 5 bad958d886 fix(office): Schnipsel ohne Profil – sie starten jetzt beim Einfuegen
profiles: [office] war als Sparmassnahme gedacht: Der Container laeuft nur
auf Wunsch. In Portainer/Dockge/Komodo gibt es aber kein --profile, und der
Dienst entstand dort nie – ohne Fehlermeldung, ohne Hinweis, ohne Weg ueber
die Bedienung.

Eine Voreinstellung, bei der das Einfuegen des Schnipsels nichts bewirkt,
ist die falsche. Alle drei Schnipsel starten jetzt mit  (geprueft: app office postgres). Abschalten: docker compose stop
office. Wer ein Profil will, haengt die Zeile selbst an.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 12:21:23 +02:00

72 lines
2.4 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Aether – Betrieb aus dem fertigen Abbild.
#
# Diese Datei und .env.example genügen für eine neue Umgebung. Der Quelltext
# muss dort nicht liegen.
#
# cp docker-compose.example.yml docker-compose.yml
# cp .env.example .env # und ausfüllen
# docker login gitea.honeyy.duckdns.org
# docker compose up -d
#
# Office ist bewusst nicht dabei: Es gibt drei Server zur Auswahl (Collabora,
# OnlyOffice, Euro-Office), und jeder bringt eigene Variablen mit. Den
# passenden Schnipsel zum Anhängen findest du im README.
#
# Der Schnipsel startet mit `docker compose up -d` sofort mit. Zum Abschalten
# `docker compose stop office`.
#
# Hintergrund und Fallstricke: README.md
# Aus dem Quelltext bauen statt ziehen: deploy/docker-compose.yml
services:
app:
container_name: aether-app
image: gitea.honeyy.duckdns.org/docker/aether:latest
restart: unless-stopped
env_file: .env
# Der Container läuft unter deiner Kennung, damit die Dateien unter
# DATA_PATH dir gehören und nicht einem Container-Nutzer.
user: "${APP_UID:-1000}:${APP_GID:-1000}"
environment:
# ocrmypdf legt Arbeitsdateien unter $HOME ab – das aus dem Image ist
# für einen abweichenden Nutzer nicht beschreibbar.
HOME: /tmp
depends_on:
postgres:
condition: service_healthy
volumes:
# Bind-Mount, kein benanntes Volume: Deine Dateien liegen als echte
# Ordner auf dem Wirt. Nur lesend anfassen – zum Hineinlegen ist WebDAV
# der Weg, sonst kennt die Datenbank die Datei nicht.
- ${DATA_PATH:-./data}:/data
networks: [internal]
ports:
# Standardmäßig nur loopback – davor gehört dein Reverse Proxy mit TLS.
# Zum Ausprobieren im LAN: APP_BIND=0.0.0.0 in der .env. Dann liegt die
# Anmeldung allerdings unverschlüsselt im Netz.
- "${APP_BIND:-127.0.0.1}:${APP_PORT:-8080}:8080"
postgres:
container_name: aether-db
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${DB_NAME}
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
networks: [internal]
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USER} -d ${DB_NAME}"]
interval: 5s
timeout: 5s
retries: 10
volumes:
postgres_data:
networks:
internal:
driver: bridge