# Images are resolved to registry digests before replacement. Never use :main here. services: backend: image: ${BACKEND_IMAGE:?Required verified backend digest} platform: linux/amd64 restart: unless-stopped stop_grace_period: 20s labels: nl.agilecc.release: ${RELEASE_VERSION:?Required release version} nl.agilecc.revision: ${RELEASE_SHA:?Required full commit SHA} logging: driver: json-file options: max-size: '10m' max-file: '3' frontend: image: ${FRONTEND_IMAGE:?Required verified frontend digest} platform: linux/amd64 restart: unless-stopped stop_grace_period: 20s depends_on: - backend environment: BACKEND_UPSTREAM: backend:8080 ports: - '${BIND_IP:?Required private NAS IP}:${FRONTEND_PORT:?Required port}:8080' labels: nl.agilecc.release: ${RELEASE_VERSION:?Required release version} nl.agilecc.revision: ${RELEASE_SHA:?Required full commit SHA} logging: driver: json-file options: max-size: '10m' max-file: '3'