Remove comments v2
This commit is contained in:
@@ -1,61 +1,42 @@
|
|||||||
# Gitea Multiple Actions Runners Configuration
|
|
||||||
services:
|
services:
|
||||||
# First Gitea Runner Instance
|
|
||||||
gitea_runner1:
|
gitea_runner1:
|
||||||
# Basic container configuration
|
|
||||||
container_name: gitea_runner1
|
container_name: gitea_runner1
|
||||||
image: docker.io/gitea/act_runner:0.2.12
|
image: docker.io/gitea/act_runner:0.2.12
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Runner configuration environment variables
|
|
||||||
environment:
|
environment:
|
||||||
CONFIG_FILE: /config.yaml # Path to configuration file
|
CONFIG_FILE: /config.yaml
|
||||||
GITEA_INSTANCE_URL: "${INSTANCE_URL}" # URL of Gitea instance
|
GITEA_INSTANCE_URL: "${INSTANCE_URL}"
|
||||||
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}" # Registration token
|
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}"
|
||||||
GITEA_RUNNER_NAME: "${RUNNER_NAME1}" # Display name for first runner
|
GITEA_RUNNER_NAME: "${RUNNER_NAME1}"
|
||||||
|
|
||||||
# Persistent storage and docker socket configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.yaml:/config.yaml # Shared configuration file
|
- ./config.yaml:/config.yaml
|
||||||
- ./data1:/data # Dedicated data directory for runner1
|
- ./data1:/data
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker socket for container jobs
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
# Second Gitea Runner Instance
|
|
||||||
gitea_runner2:
|
gitea_runner2:
|
||||||
# Basic container configuration
|
|
||||||
container_name: gitea_runner2
|
container_name: gitea_runner2
|
||||||
image: docker.io/gitea/act_runner:0.2.12
|
image: docker.io/gitea/act_runner:0.2.12
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Runner configuration environment variables
|
|
||||||
environment:
|
environment:
|
||||||
CONFIG_FILE: /config.yaml # Path to configuration file
|
CONFIG_FILE: /config.yaml
|
||||||
GITEA_INSTANCE_URL: "${INSTANCE_URL}" # URL of Gitea instance
|
GITEA_INSTANCE_URL: "${INSTANCE_URL}"
|
||||||
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}" # Registration token
|
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}"
|
||||||
GITEA_RUNNER_NAME: "${RUNNER_NAME2}" # Display name for second runner
|
GITEA_RUNNER_NAME: "${RUNNER_NAME2}"
|
||||||
|
|
||||||
# Persistent storage and docker socket configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.yaml:/config.yaml # Shared configuration file
|
- ./config.yaml:/config.yaml
|
||||||
- ./data2:/data # Dedicated data directory for runner2
|
- ./data2:/data
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker socket for container jobs
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
# Third Gitea Runner Instance
|
|
||||||
gitea_runner3:
|
gitea_runner3:
|
||||||
# Basic container configuration
|
|
||||||
container_name: gitea_runner3
|
container_name: gitea_runner3
|
||||||
image: docker.io/gitea/act_runner:0.2.12
|
image: docker.io/gitea/act_runner:0.2.12
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Runner configuration environment variables
|
|
||||||
environment:
|
environment:
|
||||||
CONFIG_FILE: /config.yaml # Path to configuration file
|
CONFIG_FILE: /config.yaml
|
||||||
GITEA_INSTANCE_URL: "${INSTANCE_URL}" # URL of Gitea instance
|
GITEA_INSTANCE_URL: "${INSTANCE_URL}"
|
||||||
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}" # Registration token
|
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}"
|
||||||
GITEA_RUNNER_NAME: "${RUNNER_NAME3}" # Display name for third runner
|
GITEA_RUNNER_NAME: "${RUNNER_NAME3}"
|
||||||
|
|
||||||
# Persistent storage and docker socket configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.yaml:/config.yaml # Shared configuration file
|
- ./config.yaml:/config.yaml
|
||||||
- ./data3:/data # Dedicated data directory for runner3
|
- ./data3:/data
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker socket for container jobs
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
@@ -1,20 +1,14 @@
|
|||||||
# Gitea Actions Runner Configuration
|
|
||||||
services:
|
services:
|
||||||
gitea_runner:
|
gitea_runner:
|
||||||
# Basic container configuration
|
|
||||||
container_name: gitea_runner
|
container_name: gitea_runner
|
||||||
image: docker.io/gitea/act_runner:0.2.12
|
image: docker.io/gitea/act_runner:0.2.12
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Runner configuration environment variables
|
|
||||||
environment:
|
environment:
|
||||||
CONFIG_FILE: /config.yaml # Path to configuration file
|
CONFIG_FILE: /config.yaml
|
||||||
GITEA_INSTANCE_URL: "${INSTANCE_URL}" # URL of Gitea instance
|
GITEA_INSTANCE_URL: "${INSTANCE_URL}"
|
||||||
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}" # Registration token
|
GITEA_RUNNER_REGISTRATION_TOKEN: "${REGISTRATION_TOKEN}"
|
||||||
GITEA_RUNNER_NAME: "${RUNNER_NAME}" # Display name for runner
|
GITEA_RUNNER_NAME: "${RUNNER_NAME}"
|
||||||
|
|
||||||
# Persistent storage and docker socket configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ./config.yaml:/config.yaml # Runner configuration file
|
- ./config.yaml:/config.yaml
|
||||||
- ./data:/data # Persistent runner data
|
- ./data:/data
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # Docker socket for container jobs
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
@@ -1,20 +1,12 @@
|
|||||||
# Gotify Push Notification Server Configuration
|
|
||||||
services:
|
services:
|
||||||
gotify:
|
gotify:
|
||||||
# Basic container configuration
|
|
||||||
container_name: gotify
|
container_name: gotify
|
||||||
image: ghcr.io/gotify/server:2.6.3
|
image: ghcr.io/gotify/server:2.6.3
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Application environment configuration
|
|
||||||
environment:
|
environment:
|
||||||
- TZ=${TZ} # Timezone configuration
|
- TZ=${TZ}
|
||||||
- GOTIFY_REGISTRATION=${GOTIFY_REGISTRATION} # Allow/disallow new user registration
|
- GOTIFY_REGISTRATION=${GOTIFY_REGISTRATION}
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/gotify/config:/app/data # Configuration and database storage
|
- ${APPDATA_PATH}/gotify/config:/app/data
|
||||||
|
|
||||||
# Network port configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:80 # Maps host port to Gotify web interface
|
- ${PORT}:80
|
||||||
|
@@ -1,52 +1,33 @@
|
|||||||
# Healthchecks.io Monitoring Service Configuration
|
|
||||||
services:
|
services:
|
||||||
healthchecks:
|
healthchecks:
|
||||||
# Basic container configuration
|
|
||||||
container_name: healthchecks
|
container_name: healthchecks
|
||||||
image: ghcr.io/linuxserver/healthchecks:3.10.20250714
|
image: ghcr.io/linuxserver/healthchecks:3.10.20250714
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# User and system configuration
|
|
||||||
environment:
|
environment:
|
||||||
# System settings
|
- PUID=${PUID}
|
||||||
- PUID=${PUID} # User ID
|
- PGID=${PGID}
|
||||||
- PGID=${PGID} # Group ID
|
- TZ=${TZ}
|
||||||
- TZ=${TZ} # Timezone
|
- SITE_ROOT=${SITE_ROOT}
|
||||||
|
- SITE_NAME=${SITE_NAME}
|
||||||
# Site configuration
|
- SITE_LOGO_URL=${SITE_LOGO_URL}
|
||||||
- SITE_ROOT=${SITE_ROOT} # Base URL
|
- DEFAULT_FROM_EMAIL=${DEFAULT_FROM_EMAIL}
|
||||||
- SITE_NAME=${SITE_NAME} # Site display name
|
- EMAIL_HOST=${EMAIL_HOST}
|
||||||
- SITE_LOGO_URL=${SITE_LOGO_URL} # Custom logo URL
|
- EMAIL_PORT=${EMAIL_PORT}
|
||||||
|
- EMAIL_HOST_USER=${EMAIL_HOST_USER}
|
||||||
# Email server configuration
|
- EMAIL_HOST_PASSWORD=${EMAIL_HOST_PASSWORD}
|
||||||
- DEFAULT_FROM_EMAIL=${DEFAULT_FROM_EMAIL} # Sender address
|
- EMAIL_USE_TLS=${EMAIL_USE_TLS}
|
||||||
- EMAIL_HOST=${EMAIL_HOST} # SMTP server
|
- EMAIL_USE_SSL=${EMAIL_USE_SSL}
|
||||||
- EMAIL_PORT=${EMAIL_PORT} # SMTP port
|
- PING_EMAIL_DOMAIN=${PING_EMAIL_DOMAIN}
|
||||||
- EMAIL_HOST_USER=${EMAIL_HOST_USER} # SMTP username
|
- SUPERUSER_EMAIL=${SUPERUSER_EMAIL}
|
||||||
- EMAIL_HOST_PASSWORD=${EMAIL_HOST_PASSWORD} # SMTP password
|
- SUPERUSER_PASSWORD=${SUPERUSER_PASSWORD}
|
||||||
- EMAIL_USE_TLS=${EMAIL_USE_TLS} # Enable TLS
|
- SECRET_KEY=${SECRET_KEY}
|
||||||
- EMAIL_USE_SSL=${EMAIL_USE_SSL} # Enable SSL
|
- REGISTRATION_OPEN=${REGISTRATION_OPEN}
|
||||||
- PING_EMAIL_DOMAIN=${PING_EMAIL_DOMAIN} # Email domain for pings
|
- APPRISE_ENABLED=${APPRISE_ENABLED}
|
||||||
|
- DISCORD_CLIENT_ID=${DISCORD_CLIENT_ID}
|
||||||
# Authentication and security
|
- DISCORD_CLIENT_SECRET=${DISCORD_CLIENT_SECRET}
|
||||||
- SUPERUSER_EMAIL=${SUPERUSER_EMAIL} # Admin email
|
- DEBUG=${DEBUG}
|
||||||
- SUPERUSER_PASSWORD=${SUPERUSER_PASSWORD} # Admin password
|
|
||||||
- SECRET_KEY=${SECRET_KEY} # Cryptographic secret
|
|
||||||
- REGISTRATION_OPEN=${REGISTRATION_OPEN} # Allow new registrations
|
|
||||||
|
|
||||||
# Integration settings
|
|
||||||
- APPRISE_ENABLED=${APPRISE_ENABLED} # Enable Apprise notifications
|
|
||||||
- DISCORD_CLIENT_ID=${DISCORD_CLIENT_ID} # Discord integration
|
|
||||||
- DISCORD_CLIENT_SECRET=${DISCORD_CLIENT_SECRET} # Discord secret
|
|
||||||
|
|
||||||
# Debugging
|
|
||||||
- DEBUG=${DEBUG} # Debug mode
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/healthchecks/config:/config # Configuration storage
|
- ${APPDATA_PATH}/healthchecks/config:/config
|
||||||
|
|
||||||
# Network port configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${PORT}:8000 # Web interface port
|
- ${PORT}:8000
|
||||||
- ${SMTP_PORT}:2525 # SMTP port for email
|
- ${SMTP_PORT}:2525
|
||||||
|
@@ -1,20 +1,12 @@
|
|||||||
# Home Assistant Smart Home Platform Configuration
|
|
||||||
services:
|
services:
|
||||||
homeassistant:
|
homeassistant:
|
||||||
# Basic container configuration
|
|
||||||
container_name: homeassistant
|
container_name: homeassistant
|
||||||
image: docker.io/homeassistant/home-assistant:2025.7.2 # Official Home Assistant image
|
image: docker.io/homeassistant/home-assistant:2025.7.2
|
||||||
restart: unless-stopped # Auto-restart on failure
|
restart: unless-stopped
|
||||||
|
network_mode: host
|
||||||
# Network configuration (host mode for full local network access)
|
|
||||||
network_mode: host # Required for discovering local devices and integrations
|
|
||||||
|
|
||||||
# Persistent storage and system configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/homeassistant/config:/config # Configuration files
|
- ${APPDATA_PATH}/homeassistant/config:/config
|
||||||
- /etc/localtime:/etc/localtime:ro # Sync host timezone for proper logging
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
|
||||||
# Health check configuration
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: "curl --connect-timeout 10 --silent -f http://127.0.0.1:8123/ || exit 1"
|
test: "curl --connect-timeout 10 --silent -f http://127.0.0.1:8123/ || exit 1"
|
||||||
interval: 45s
|
interval: 45s
|
||||||
|
@@ -1,54 +1,33 @@
|
|||||||
# MinIO Object Storage Service Configuration
|
|
||||||
services:
|
services:
|
||||||
# MinIO Server Service
|
|
||||||
minio:
|
minio:
|
||||||
# Basic container configuration
|
|
||||||
container_name: minio
|
container_name: minio
|
||||||
image: docker.io/minio/minio:RELEASE.2025-07-18T21-56-31Z # Official MinIO image
|
image: docker.io/minio/minio:RELEASE.2025-07-18T21-56-31Z
|
||||||
restart: unless-stopped # Auto-restart on failure
|
restart: unless-stopped
|
||||||
|
command: server /data
|
||||||
# Runtime command and user permissions
|
user: ${PUID}:${PGID}
|
||||||
command: server /data # Start in server mode
|
|
||||||
user: ${PUID}:${PGID} # Run as specified user/group
|
|
||||||
|
|
||||||
# Environment variables for authentication and configuration
|
|
||||||
environment:
|
environment:
|
||||||
- MINIO_ROOT_USER=${MINIO_ROOT_USER} # Admin username
|
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
|
||||||
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} # Admin password
|
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
|
||||||
- MINIO_SERVER_URL=${MINIO_SERVER_URL} # Public server endpoint URL
|
- MINIO_SERVER_URL=${MINIO_SERVER_URL}
|
||||||
- MINIO_BROWSER_REDIRECT_URL=${MINIO_BROWSER_REDIRECT_URL} # Web console redirect URL
|
- MINIO_BROWSER_REDIRECT_URL=${MINIO_BROWSER_REDIRECT_URL}
|
||||||
|
|
||||||
# Persistent data storage
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/minio/data:/data # Maps host directory to container
|
- ${APPDATA_PATH}/minio/data:/data
|
||||||
|
|
||||||
# Network ports
|
|
||||||
ports:
|
ports:
|
||||||
- ${API_PORT}:9000 # MinIO API port
|
- ${API_PORT}:9000
|
||||||
|
|
||||||
# Health check configuration
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD", "mc", "ready", "local"]
|
test: ["CMD", "mc", "ready", "local"]
|
||||||
interval: 5s
|
interval: 5s
|
||||||
timeout: 5s
|
timeout: 5s
|
||||||
retries: 5
|
retries: 5
|
||||||
|
|
||||||
# MinIO Console Service (separate from main server)
|
|
||||||
minio-console:
|
minio-console:
|
||||||
# Basic container configuration
|
|
||||||
container_name: minio-console
|
container_name: minio-console
|
||||||
image: ghcr.io/georgmangold/console:v1.8.1 # Community console UI
|
image: ghcr.io/georgmangold/console:v1.8.1
|
||||||
restart: unless-stopped # Auto-restart on failure
|
restart: unless-stopped
|
||||||
|
|
||||||
# Service dependencies
|
|
||||||
depends_on:
|
depends_on:
|
||||||
minio:
|
minio:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
|
|
||||||
# Environment configuration
|
|
||||||
environment:
|
environment:
|
||||||
- CONSOLE_MINIO_SERVER=http://minio:9000 # Points to MinIO server
|
- CONSOLE_MINIO_SERVER=http://minio:9000
|
||||||
|
|
||||||
# Network ports
|
|
||||||
ports:
|
ports:
|
||||||
- ${CONSOLE_PORT}:9090 # Web console access port
|
- ${CONSOLE_PORT}:9090
|
||||||
|
@@ -1,136 +1,81 @@
|
|||||||
# Nextcloud with PostgreSQL and Valkey Configuration
|
|
||||||
services:
|
services:
|
||||||
# PostgreSQL Database Service
|
|
||||||
nextcloud_db:
|
nextcloud_db:
|
||||||
# Basic container configuration
|
|
||||||
container_name: nextcloud_db
|
container_name: nextcloud_db
|
||||||
image: docker.io/library/postgres:17.5
|
image: docker.io/library/postgres:17.5
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Database credentials
|
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_USER=${POSTGRES_USER} # Database username
|
- POSTGRES_USER=${POSTGRES_USER}
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD} # Database password
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
- POSTGRES_DB=${POSTGRES_DB} # Database name
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/nextcloud/db:/var/lib/postgresql/data # Database files
|
- ${APPDATA_PATH}/nextcloud/db:/var/lib/postgresql/data
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${DB_PORT}:5432 # PostgreSQL port
|
- ${DB_PORT}:5432
|
||||||
|
|
||||||
# Health monitoring
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
|
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB} -U ${POSTGRES_USER}"]
|
||||||
start_period: 10s # Initial delay
|
start_period: 10s
|
||||||
interval: 10s # Check frequency
|
interval: 10s
|
||||||
timeout: 5s # Timeout duration
|
timeout: 5s
|
||||||
retries: 3 # Retry attempts
|
retries: 3
|
||||||
|
|
||||||
# Valkey (Redis-compatible) Cache Service
|
|
||||||
nextcloud_valkey:
|
nextcloud_valkey:
|
||||||
# Basic container configuration
|
|
||||||
container_name: nextcloud_valkey
|
container_name: nextcloud_valkey
|
||||||
image: docker.io/valkey/valkey:8.1.3
|
image: docker.io/valkey/valkey:8.1.3
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
command: valkey-server --save 60 1 --requirepass ${VALKEY_PASSWORD}
|
||||||
# Runtime configuration
|
|
||||||
command: valkey-server --save 60 1 --requirepass ${VALKEY_PASSWORD} # Persistence and auth
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/nextcloud/valkey:/data # Valkey data
|
- ${APPDATA_PATH}/nextcloud/valkey:/data
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${VALKEY_PORT}:6379 # Valkey port
|
- ${VALKEY_PORT}:6379
|
||||||
|
|
||||||
# Health monitoring
|
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "echo 'auth ${VALKEY_PASSWORD}\nping' | valkey-cli | grep PONG"]
|
test: ["CMD-SHELL", "echo 'auth ${VALKEY_PASSWORD}\nping' | valkey-cli | grep PONG"]
|
||||||
start_period: 20s # Initial delay
|
start_period: 20s
|
||||||
interval: 30s # Check frequency
|
interval: 30s
|
||||||
retries: 5 # Retry attempts
|
retries: 5
|
||||||
timeout: 3s # Timeout duration
|
timeout: 3s
|
||||||
|
|
||||||
# Nextcloud Application Service
|
|
||||||
nextcloud_app:
|
nextcloud_app:
|
||||||
# Basic container configuration
|
|
||||||
image: docker.io/library/nextcloud:31.0.7
|
image: docker.io/library/nextcloud:31.0.7
|
||||||
container_name: nextcloud_app
|
container_name: nextcloud_app
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Service dependencies
|
|
||||||
depends_on:
|
depends_on:
|
||||||
nextcloud_db:
|
nextcloud_db:
|
||||||
condition: service_healthy # Requires healthy database
|
condition: service_healthy
|
||||||
nextcloud_valkey:
|
nextcloud_valkey:
|
||||||
condition: service_healthy # Requires healthy valkey
|
condition: service_healthy
|
||||||
|
|
||||||
# Environment variables
|
|
||||||
environment:
|
environment:
|
||||||
# Database configuration
|
- POSTGRES_HOST=nextcloud_db:5432
|
||||||
- POSTGRES_HOST=nextcloud_db:5432 # PostgreSQL host and port
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
- POSTGRES_DB=${POSTGRES_DB} # Database name
|
- POSTGRES_USER=${POSTGRES_USER}
|
||||||
- POSTGRES_USER=${POSTGRES_USER} # Database username
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD} # Database password
|
- REDIS_HOST=nextcloud_valkey
|
||||||
|
- REDIS_HOST_PORT=6379
|
||||||
# Redis/Valkey cache configuration
|
- REDIS_HOST_PASSWORD=${VALKEY_PASSWORD}
|
||||||
- REDIS_HOST=nextcloud_valkey # Valkey hostname
|
- PHP_MEMORY_LIMIT=${PHP_MEMORY_LIMIT}
|
||||||
- REDIS_HOST_PORT=6379 # Valkey port
|
- PHP_UPLOAD_LIMIT=${PHP_UPLOAD_LIMIT}
|
||||||
- REDIS_HOST_PASSWORD=${VALKEY_PASSWORD} # Valkey authentication
|
- APACHE_DISABLE_REWRITE_IP=${APACHE_DISABLE_REWRITE_IP}
|
||||||
|
|
||||||
# PHP performance tuning
|
|
||||||
- PHP_MEMORY_LIMIT=${PHP_MEMORY_LIMIT} # Memory allocation
|
|
||||||
- PHP_UPLOAD_LIMIT=${PHP_UPLOAD_LIMIT} # Max upload size
|
|
||||||
|
|
||||||
# Security settings
|
|
||||||
- APACHE_DISABLE_REWRITE_IP=${APACHE_DISABLE_REWRITE_IP} # IP address handling
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/nextcloud/app:/var/www/html
|
- ${APPDATA_PATH}/nextcloud/app:/var/www/html
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
ports:
|
ports:
|
||||||
- ${APP_PORT}:80
|
- ${APP_PORT}:80
|
||||||
|
|
||||||
# Nextcloud Cron Service
|
|
||||||
nextcloud_cron:
|
nextcloud_cron:
|
||||||
# Basic container configuration
|
|
||||||
image: docker.io/library/nextcloud:31.0.7
|
image: docker.io/library/nextcloud:31.0.7
|
||||||
container_name: nextcloud_cron
|
container_name: nextcloud_cron
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# Service dependencies
|
|
||||||
depends_on:
|
depends_on:
|
||||||
- nextcloud_app
|
- nextcloud_app
|
||||||
|
|
||||||
# Entry point
|
|
||||||
entrypoint: /cron.sh
|
entrypoint: /cron.sh
|
||||||
|
|
||||||
# Environment variables
|
|
||||||
environment:
|
environment:
|
||||||
# Database configuration
|
- POSTGRES_HOST=nextcloud_db:5432
|
||||||
- POSTGRES_HOST=nextcloud_db:5432 # PostgreSQL host and port
|
- POSTGRES_DB=${POSTGRES_DB}
|
||||||
- POSTGRES_DB=${POSTGRES_DB} # Database name
|
- POSTGRES_USER=${POSTGRES_USER}
|
||||||
- POSTGRES_USER=${POSTGRES_USER} # Database username
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD} # Database password
|
- REDIS_HOST=nextcloud_valkey
|
||||||
|
- REDIS_HOST_PORT=6379
|
||||||
# Redis/Valkey cache configuration
|
- REDIS_HOST_PASSWORD=${VALKEY_PASSWORD}
|
||||||
- REDIS_HOST=nextcloud_valkey # Valkey hostname
|
- PHP_MEMORY_LIMIT=${PHP_MEMORY_LIMIT}
|
||||||
- REDIS_HOST_PORT=6379 # Valkey port
|
- PHP_UPLOAD_LIMIT=${PHP_UPLOAD_LIMIT}
|
||||||
- REDIS_HOST_PASSWORD=${VALKEY_PASSWORD} # Valkey authentication
|
- APACHE_DISABLE_REWRITE_IP=${APACHE_DISABLE_REWRITE_IP}
|
||||||
|
|
||||||
# PHP performance tuning
|
|
||||||
- PHP_MEMORY_LIMIT=${PHP_MEMORY_LIMIT} # Memory allocation
|
|
||||||
- PHP_UPLOAD_LIMIT=${PHP_UPLOAD_LIMIT} # Max upload size
|
|
||||||
|
|
||||||
# Security settings
|
|
||||||
- APACHE_DISABLE_REWRITE_IP=${APACHE_DISABLE_REWRITE_IP} # IP address handling
|
|
||||||
|
|
||||||
# Persistent storage configuration
|
|
||||||
volumes:
|
volumes:
|
||||||
- ${APPDATA_PATH}/nextcloud/app:/var/www/html
|
- ${APPDATA_PATH}/nextcloud/app:/var/www/html
|
||||||
|
Reference in New Issue
Block a user