Files
docker-compose/asciinema/compose.yaml
Sebastian Krüger dc0bc061f8 fix: use compose_network for asciinema stack
Changed network reference from ${NETWORK_NAME} variable to hardcoded
compose_network to fix deployment issue where arty doesn't export
environment variables to docker compose.

Changes:
- Network: ${NETWORK_NAME} → compose_network
- Removed external network declaration (inherited from root)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-09 02:10:00 +01:00

47 lines
1.7 KiB
YAML

services:
asciinema:
image: ${ASCIINEMA_IMAGE:-ghcr.io/asciinema/asciinema-server:latest}
container_name: ${ASCIINEMA_COMPOSE_PROJECT_NAME}_app
restart: unless-stopped
networks:
- compose_network
volumes:
- asciinema_data:/var/opt/asciinema
- ./theme/custom.css:/app/assets/css/custom.css:ro
environment:
SECRET_KEY_BASE: ${ASCIINEMA_SECRET_KEY}
URL_HOST: ${ASCIINEMA_TRAEFIK_HOST}
URL_PORT: 443
URL_SCHEME: https
DATABASE_URL: postgresql://${DB_USER}:${DB_PASSWORD}@${CORE_DB_HOST}/${ASCIINEMA_DB_NAME}?pool_size=10
SMTP_HOST: ${EMAIL_SMTP_HOST}
SMTP_PORT: ${EMAIL_SMTP_PORT}
SMTP_USERNAME: ${EMAIL_SMTP_USER}
SMTP_PASSWORD: ${EMAIL_SMTP_PASSWORD}
SMTP_SSL: ${SMTP_SSL:-true}
MAIL_FROM_ADDRESS: ${ASCIINEMA_MAIL_FROM}
MAIL_REPLY_TO_ADDRESS: ${ASCIINEMA_MAIL_REPLY_TO}
UNCLAIMED_RECORDING_TTL: ${ASCIINEMA_UNCLAIMED_TTL:-30}
labels:
- traefik.enable=${ASCIINEMA_TRAEFIK_ENABLED:-true}
- traefik.docker.network=${NETWORK_NAME}
- traefik.http.routers.asciinema.rule=Host(`${ASCIINEMA_TRAEFIK_HOST}`)
- traefik.http.routers.asciinema.entrypoints=web-secure
- traefik.http.routers.asciinema.tls=true
- traefik.http.routers.asciinema.tls.certresolver=letsencrypt
- traefik.http.services.asciinema.loadbalancer.server.port=4000
- traefik.http.routers.asciinema.middlewares=compress@file
- com.centurylinklabs.watchtower.enable=true
depends_on:
- postgres
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:4000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
volumes:
asciinema_data:
name: ${ASCIINEMA_COMPOSE_PROJECT_NAME}_data