oneuptime/master/docker-compose.yml aktualisiert

This commit is contained in:
thomas committed 2026-10-21 20:07:24 +00:00
1 parent 59d9d274a9
commit 1e79391dae
1 file changed
+23 -21
+23 -21
View File
@@ -1,49 +1,45 @@
version: '3.8' version: '3.8'
services: services:
# 1. OneUptime Ingress: Das offizielle Nginx-Gateway (wichtig für die Assets) # 1. OneUptime Ingress: Das offizielle Nginx-Gateway (Liefert das Frontend aus)
oneuptime-ingress: oneuptime-ingress:
image: oneuptime/nginx:${ONEUPTIME_VERSION:-release} image: oneuptime/nginx:${ONEUPTIME_VERSION:-release}
container_name: oneuptime-ingress container_name: oneuptime-ingress
restart: ${RESTART_POLICY:-always} restart: ${RESTART_POLICY:-always}
ports: ports:
# Dein Load Balancer greift auf Port 7080 deines Docker-Hosts zu # Mappt deinen gewünschten Port 7080 auf den internen Nginx-Standardport
- "${HOST_PORT_HTTP:-7080}:8080" - "${HOST_PORT_HTTP:-7080}:8080"
- "${HOST_PORT_HTTPS:-4433}:4430" - "${HOST_PORT_HTTPS:-4433}:4430"
environment: environment:
- TZ=${TIMEZONE:-Europe/Berlin} - TZ=${TIMEZONE:-Europe/Berlin}
# Diese Variablen sind für das Nginx-Skript zwingend erforderlich # Diese Variablen baut das Image zwingend in sein Nginx-Template ein
- NGINX_LISTEN_ADDRESS=${NGINX_LISTEN_ADDRESS:-0.0.0.0:} - NGINX_LISTEN_ADDRESS=${NGINX_LISTEN_ADDRESS:-0.0.0.0:}
- NGINX_LISTEN_OPTIONS=${NGINX_LISTEN_OPTIONS:-} - NGINX_LISTEN_OPTIONS=${NGINX_LISTEN_OPTIONS:-}
- SERVER_APP_HOSTNAME=${SERVER_APP_HOSTNAME:-app} - SERVER_APP_HOSTNAME=app
- APP_PORT=${APP_PORT:-3002} - APP_PORT=3002
- SERVER_HOME_HOSTNAME=${SERVER_HOME_HOSTNAME:-home} - SERVER_HOME_HOSTNAME=home
- HOME_PORT=${HOME_PORT:-1444} - HOME_PORT=1444
- HOST=${ONEUPTIME_HOST:-localhost:7080} - HOST=${ONEUPTIME_HOST:-localhost:7080}
depends_on: depends_on:
- oneuptime - app
# 2. OneUptime App-Core: Zentraler Backend- und API-Server # 2. OneUptime App-Core: Muss zwingend 'app' heißen, damit das Nginx-Image dorthin routet
oneuptime: app:
image: oneuptime/app:${ONEUPTIME_VERSION:-release} image: oneuptime/app:${ONEUPTIME_VERSION:-release}
container_name: oneuptime-master container_name: oneuptime-master
restart: ${RESTART_POLICY:-always} restart: ${RESTART_POLICY:-always}
networks:
default:
aliases:
- ${SERVER_APP_HOSTNAME:-app}
environment: environment:
- CONTAINER_NAME=oneuptime - CONTAINER_NAME=app
- PORT=3002 - PORT=3002
- ENCRYPTION_SECRET=${ENCRYPTION_SECRET:-ein_sehr_sicheres_zufaelliges_passwort_123!} - ENCRYPTION_SECRET=${ENCRYPTION_SECRET:-ein_sehr_sicheres_zufaelliges_passwort_123!}
- APP_NAME=${APP_NAME:-OneUptime} - APP_NAME=${APP_NAME:-OneUptime}
- TZ=${TIMEZONE:-Europe/Berlin} - TZ=${TIMEZONE:-Europe/Berlin}
# Routing-Parameter für das Ingress-Gateway # Internes URL-Routing
- HOST=${ONEUPTIME_HOST:-localhost:7080} - HOST=${ONEUPTIME_HOST:-localhost:7080}
- HTTP_PROTOCOL=${ONEUPTIME_PROTOCOL:-http} - HTTP_PROTOCOL=${ONEUPTIME_PROTOCOL:-http}
- SERVER_APP_HOSTNAME=${SERVER_APP_HOSTNAME:-app} - SERVER_APP_HOSTNAME=app
- APP_PORT=${APP_PORT:-3002} - APP_PORT=3002
# PostgreSQL-Verbindungsmuster # PostgreSQL-Verbindungsmuster
- DATABASE_HOST=oneuptime-postgres - DATABASE_HOST=oneuptime-postgres
@@ -65,7 +61,8 @@ services:
volumes: volumes:
- ${ONEUPTIME_DATA_DIR:-/opt/docker/oneuptime/app}:/usr/src/app/data - ${ONEUPTIME_DATA_DIR:-/opt/docker/oneuptime/app}:/usr/src/app/data
depends_on: depends_on:
- oneuptime-postgres oneuptime-postgres:
condition: service_healthy
- oneuptime-redis - oneuptime-redis
- oneuptime-clickhouse - oneuptime-clickhouse
@@ -81,6 +78,11 @@ services:
- TZ=${TIMEZONE:-Europe/Berlin} - TZ=${TIMEZONE:-Europe/Berlin}
volumes: volumes:
- ${POSTGRES_DATA_DIR:-/opt/docker/oneuptime/postgres}:/var/lib/postgresql/data - ${POSTGRES_DATA_DIR:-/opt/docker/oneuptime/postgres}:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-oneuptime} -d $${POSTGRES_DB:-oneuptimedb}"]
interval: 5s
timeout: 5s
retries: 5
# 4. Redis: In-Memory-Datenbank für Caching & Queues # 4. Redis: In-Memory-Datenbank für Caching & Queues
oneuptime-redis: oneuptime-redis:
@@ -116,8 +118,8 @@ services:
restart: ${RESTART_POLICY:-always} restart: ${RESTART_POLICY:-always}
environment: environment:
- TZ=${TIMEZONE:-Europe/Berlin} - TZ=${TIMEZONE:-Europe/Berlin}
- ONEUPTIME_URL=http://${SERVER_APP_HOSTNAME:-app}:3002 - ONEUPTIME_URL=http://app:3002
- PROBE_ID=${PROBE_ID:-global-probe} - PROBE_ID=${PROBE_ID:-global-probe}
- PROBE_KEY=${PROBE_KEY:-default-probe-key-12345!} - PROBE_KEY=${PROBE_KEY:-default-probe-key-12345!}
depends_on: depends_on:
- oneuptime - app