services: api: image: git.wundenbergs.de/tim/me-fit/api:latest container_name: me-fit-api restart: always environment: - FRONTEND_URL=https://me-fit.eu volumes: - ./api/data.db:/app/data.db - ./api/firebase.json:/app/secrets/firebase.json labels: - traefik.http.routers.api.rule=Host(`api.me-fit.eu`) - traefik.http.routers.api.tls=true - traefik.http.routers.api.tls.certresolver=cert view: image: git.wundenbergs.de/tim/me-fit/view:latest container_name: me-fit-view restart: always labels: - traefik.http.routers.view.rule=Host(`me-fit.eu`) - traefik.http.routers.view.tls=true - traefik.http.routers.view.tls.certresolver=cert traefik: image: traefik:v3.1@sha256:ec1a82940b8e00eaeef33fb4113aa1d1573b2ebb6440e10c023743fe96f08475 container_name: traefik command: - "--providers.docker" - "--entrypoints.web.address=:80" - "--entrypoints.websecure.address=:443" - "--certificatesresolvers.cert.acme.email=timwundenberg@outlook.de" - "--certificatesresolvers.cert.acme.storage=acme.json" - "--certificatesresolvers.cert.acme.httpchallenge.entrypoint=web" ports: - "80:80" - "443:443" volumes: - /var/run/docker.sock:/var/run/docker.sock watchtower: image: containrrr/watchtower:latest@sha256:6dd50763bbd632a83cb154d5451700530d1e44200b268a4e9488fefdfcf2b038 container_name: watchtower environment: - "WATCHTOWER_SCHEDULE=* 0/10 * * *" volumes: - /var/run/docker.sock:/var/run/docker.sock - ./.docker/config.json:/config.json