version: "3.9" networks: proxy: external: true services: baikal: image: ckulka/baikal:nginx container_name: baikal volumes: - $DOCKDIR/baikal:/var/www/baikal/Specific restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:dav.$DOMAIN" traefik.port: "80" cgit: image: chruth/alpine-cgit container_name: cgit environment: - PUID=$PUID - PGID=$PGID - TZ=$TZ volumes: - $SYNCDIR/src:/git - $DOCKDIR/cgit/cgitrc:/config/cgitrc - $DOCKDIR/cgit/cgit.css:/app/cgit.css restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:git.$DOMAIN" traefik.port: "80" changedetection: image: linuxserver/changedetection.io container_name: changedetection environment: - PGID=$PGID - PUID=$PUID volumes: - $DOCKDIR/changedetection:/config depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:diff.$DOMAIN" traefik.port: "5000" echoip: image: mpolden/echoip container_name: echoip entrypoint: "/opt/echoip/echoip -H X-Real-IP" restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:ip.$DOMAIN" traefik.port: "8080" h5ai: image: awesometic/h5ai container_name: h5ai environment: - PUID=$PUID - PGID=$PGID - TZ=$TZ volumes: - $SYNCDIR/pub:/h5ai restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:pub.$DOMAIN" traefik.port: "80" hugo: image: klakegg/hugo container_name: hugo command: "server --watch=true --minify --source=/src --baseURL=https://$DOMAIN --bind=0.0.0.0 --appendPort=false --buildFuture" volumes: - $SYNCDIR/src/blog.$DOMAIN:/src restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:$DOMAIN,blog.$DOMAIN,www.$DOMAIN" traefik.port: "1313" jackett: image: linuxserver/jackett container_name: jackett environment: - PUID=$PUID - PGID=$PGID - TZ=$TZ volumes: - $DOCKDIR/jackett:/config - $SYNCDIR:/downloads restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:jack.$DOMAIN" traefik.port: "9117" postgres: image: postgres:alpine container_name: postgres restart: unless-stopped ports: - 44432:5432 environment: - POSTGRES_PASSWORD=$DBPASSWORD volumes: - $DOCKDIR/postgres:/var/lib/postgresql/data traefik: image: traefik:1.7 container_name: traefik volumes: - /var/run/docker.sock:/var/run/docker.sock - $DOCKDIR/traefik/traefik.toml:/etc/traefik/traefik.toml - $DOCKDIR/traefik/acme.json:/etc/traefik/acme.json - $DOCKDIR/traefik:/app/ ports: - 80:80 - 443:443 restart: unless-stopped networks: - proxy ttrss: image: wangqiru/ttrss container_name: ttrss restart: unless-stopped environment: - SELF_URL_PATH=https://rss.$DOMAIN/ - DB_HOST=$DOMAIN - DB_PASS=$DBPASSWORD - DB_PORT=44432 - DB_TYPE=pgsql - DB_USER=postgres depends_on: - postgres - traefik networks: - proxy labels: traefik.frontend.rule: "Host:rss.$DOMAIN" traefik.port: "80" vaultwarden: image: vaultwarden/server:alpine container_name: vaultwarden volumes: - $DOCKDIR/vaultwarden:/data environment: - WEBSOCKET_ENABLED=false - SIGNUPS_ALLOWED=false restart: unless-stopped depends_on: - traefik networks: - proxy labels: traefik.frontend.rule: "Host:pass.$DOMAIN" traefik.port: "80"