version: "3.8" networks: penpot: volumes: penpot_postgres_v15: penpot_tenant_assets: caddy_data: caddy_config: services: caddy: image: caddy:2 restart: always ports: - "80:80" - "443:443" volumes: - ./config/caddy/Caddyfile:/etc/caddy/Caddyfile:ro - caddy_data:/data - caddy_config:/config - ./config/certs:/etc/caddy/certs environment: - CADDY_SITE_ADDRESS=${CADDY_SITE_ADDRESS} - TLS_EMAIL=${TLS_EMAIL} networks: - penpot depends_on: - penpot-frontend penpot-frontend: image: "penpotapp/frontend:latest" restart: always volumes: - penpot_tenant_assets:/opt/data/assets depends_on: - penpot-backend networks: - penpot penpot-backend: image: "penpotapp/backend:latest" restart: always volumes: - penpot_tenant_assets:/opt/data/assets depends_on: - penpot-postgres - penpot-redis networks: - penpot env_file: - .env penpot-exporter: image: "penpotapp/exporter:latest" restart: always networks: - penpot env_file: - .env penpot-postgres: image: "postgres:15" restart: always stop_signal: SIGINT volumes: - penpot_postgres_v15:/var/lib/postgresql/data networks: - penpot env_file: - .env penpot-redis: image: redis:7 restart: always networks: - penpot