47 lines
1.3 KiB
YAML
47 lines
1.3 KiB
YAML
|
services:
|
||
|
castopod:
|
||
|
image: castopod/castopod:latest
|
||
|
container_name: 'castopod'
|
||
|
volumes:
|
||
|
- '${MEDIA_PATH:-./media}:/var/www/castopod/public/media'
|
||
|
environment:
|
||
|
MYSQL_DATABASE: '${MYSQL_DATABASE:-host.docker.internal}'
|
||
|
MYSQL_USER: '${MYSQL_USER:-castopod}'
|
||
|
MYSQL_PASSWORD: '${MYSQL_PASSWORD}'
|
||
|
CP_BASEURL: "https://castopod.example.com"
|
||
|
CP_ANALYTICS_SALT: '${CP_ANALYTICS_SALT}'
|
||
|
CP_CACHE_HANDLER: redis
|
||
|
CP_REDIS_HOST: '${CP_REDIS_HOST:-redis}'
|
||
|
CP_REDIS_PASSWORD: '${CP_REDIS_PASSWORD}'
|
||
|
env_file: '.env'
|
||
|
networks:
|
||
|
- castopod
|
||
|
extra_hosts:
|
||
|
- "host.docker.internal:host-gateway"
|
||
|
ports:
|
||
|
- '${EXTERNAL_ADDRESS:-127.0.0.1}:${EXTERNAL_PORT:-8393}:8000'
|
||
|
restart: unless-stopped
|
||
|
logging:
|
||
|
driver: "json-file"
|
||
|
options:
|
||
|
max-size: "${LOG_MAX_SIZE:-5m}"
|
||
|
max-file: "${LOG_MAX_FILE:-5}"
|
||
|
|
||
|
redis:
|
||
|
image: redis:7.2-alpine
|
||
|
container_name: "castopod-redis"
|
||
|
command: '--requirepass ${CP_REDIS_PASSWORD}'
|
||
|
volumes:
|
||
|
- '${REDIS_DATA_PATH:-./redis_data}:/data'
|
||
|
networks:
|
||
|
- castopod
|
||
|
restart: unless-stopped
|
||
|
logging:
|
||
|
driver: "json-file"
|
||
|
options:
|
||
|
max-size: "${LOG_MAX_SIZE:-5m}"
|
||
|
max-file: "${LOG_MAX_FILE:-5}"
|
||
|
|
||
|
networks:
|
||
|
castopod:
|