From 1a10db792f9d15d0d308517f5e9aad25d33c4857 Mon Sep 17 00:00:00 2001 From: till Date: Tue, 30 Jun 2026 11:14:23 +0000 Subject: [PATCH] Plan B: nginx aus eigenem Image (kein Mount) + depends_on entkoppelt --- Dockerfile.nginx | 4 ++++ docker-compose.yaml | 39 +++++++++------------------------------ 2 files changed, 13 insertions(+), 30 deletions(-) create mode 100644 Dockerfile.nginx diff --git a/Dockerfile.nginx b/Dockerfile.nginx new file mode 100644 index 0000000..453e436 --- /dev/null +++ b/Dockerfile.nginx @@ -0,0 +1,4 @@ +FROM nginx:latest +COPY nginx/nginx.conf /etc/nginx/nginx.conf +COPY nginx/ssl/certificate.crt /etc/nginx/ssl/certificate.crt +COPY nginx/ssl/private_key.key /etc/nginx/ssl/private_key.key diff --git a/docker-compose.yaml b/docker-compose.yaml index be0c204..f091f6f 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,6 +1,6 @@ # AppFlowy Cloud — schlanke Self-Host-Variante fuer Heidrich Digital (Coolify/Traefik) -# Abgespeckt: ohne 'ai' und 'appflowy_search'. Mem-Limits als Leitplanke (~2.3 GB). -# Hinter Traefik: nginx ohne Host-Ports, im coolify-Netz. +# Ohne 'ai' + 'appflowy_search'. Mem-Limits ~2.3 GB. nginx aus eigenem Image (kein Mount). +# depends_on entkoppelt -> alle Container starten sofort, pendeln per restart:on-failure ein. services: postgres: image: pgvector/pgvector:pg16 @@ -14,7 +14,7 @@ services: test: ["CMD","pg_isready","-U","postgres","-d","postgres"] interval: 5s timeout: 5s - retries: 12 + retries: 20 volumes: - postgres_data:/var/lib/postgresql/data @@ -39,9 +39,6 @@ services: image: appflowyinc/gotrue:latest restart: on-failure mem_limit: 192m - depends_on: - postgres: - condition: service_healthy environment: - GOTRUE_ADMIN_EMAIL=mail@heidrich-digital.de - GOTRUE_ADMIN_PASSWORD=${GOTRUE_ADMIN_PASSWORD} @@ -66,16 +63,13 @@ services: test: "curl --fail http://127.0.0.1:9999/health || exit 1" interval: 5s timeout: 5s - retries: 12 - start_period: 40s + retries: 20 + start_period: 60s appflowy_cloud: image: appflowyinc/appflowy_cloud:latest restart: on-failure mem_limit: 640m - depends_on: - gotrue: - condition: service_healthy environment: - RUST_LOG=info - APPFLOWY_ENVIRONMENT=production @@ -100,15 +94,12 @@ services: test: "curl --fail http://127.0.0.1:8000/api/health || exit 1" interval: 5s timeout: 5s - retries: 12 + retries: 20 appflowy_worker: image: appflowyinc/appflowy_worker:latest restart: on-failure mem_limit: 256m - depends_on: - appflowy_cloud: - condition: service_healthy environment: - RUST_LOG=info - APPFLOWY_ENVIRONMENT=production @@ -127,9 +118,6 @@ services: image: appflowyinc/admin_frontend:latest restart: on-failure mem_limit: 96m - depends_on: - appflowy_cloud: - condition: service_healthy environment: - APPFLOWY_GOTRUE_BASE_URL=http://gotrue:9999 - APPFLOWY_BASE_URL=http://appflowy_cloud:8000 @@ -138,26 +126,17 @@ services: image: appflowyinc/appflowy_web:latest restart: on-failure mem_limit: 256m - depends_on: - appflowy_cloud: - condition: service_healthy environment: - APPFLOWY_BASE_URL=https://o14i2dg0el8grbbbcm1u20u1.46.224.49.66.sslip.io - APPFLOWY_GOTRUE_BASE_URL=https://o14i2dg0el8grbbbcm1u20u1.46.224.49.66.sslip.io/gotrue - APPFLOWY_WS_BASE_URL=wss://o14i2dg0el8grbbbcm1u20u1.46.224.49.66.sslip.io/ws/v2 nginx: - image: nginx + build: + context: . + dockerfile: Dockerfile.nginx restart: on-failure mem_limit: 96m - depends_on: - - appflowy_cloud - - appflowy_web - - gotrue - volumes: - - ./nginx/nginx.conf:/etc/nginx/nginx.conf - - ./nginx/ssl/certificate.crt:/etc/nginx/ssl/certificate.crt - - ./nginx/ssl/private_key.key:/etc/nginx/ssl/private_key.key networks: - default - coolify