# https://docs.castopod.org/main/en/getting-started/docker/ services: castopod: image: castopod/castopod:latest container_name: "castopod" mem_limit: 512m env_file: .env volumes: - castopod-media:/var/www/castopod/public/media environment: MYSQL_DATABASE: castopod MYSQL_USER: castopod MYSQL_PASSWORD: ${MYSQL_PASSWORD} CP_BASEURL: ${CP_BASEURL} CP_ANALYTICS_SALT: ${CP_ANALYTICS_SALT} CP_CACHE_HANDLER: redis CP_REDIS_HOST: redis CP_REDIS_PASSWORD: ${CP_REDIS_PASSWORD} CP_EMAIL_SMTP_HOST: ${CP_EMAIL_SMTP_HOST} CP_EMAIL_FROM: ${CP_EMAIL_FROM} CP_EMAIL_SMTP_USERNAME: ${CP_EMAIL_SMTP_USERNAME} CP_EMAIL_SMTP_PASSWORD: ${CP_EMAIL_SMTP_PASSWORD} CP_EMAIL_SMTP_PORT: 587 networks: - castopod - castopod-db ports: - 127.0.0.1:3008:8000 restart: unless-stopped mariadb: image: mariadb:11.2 container_name: "castopod-mariadb" mem_limit: 1g networks: - castopod-db volumes: - castopod-db:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: castopod MYSQL_USER: castopod MYSQL_PASSWORD: ${MYSQL_PASSWORD} restart: always redis: image: redis:7.2-alpine container_name: "castopod-redis" mem_limit: 256m command: --requirepass ${CP_REDIS_PASSWORD} volumes: - castopod-cache:/data networks: - castopod volumes: castopod-media: castopod-db: castopod-cache: networks: castopod: castopod-db: