From a39d455555f66c4059208360f0ebf514390af31f Mon Sep 17 00:00:00 2001 From: breadcat Date: Sun, 4 Sep 2022 00:24:39 +0100 Subject: Revert earlier split commit I'm not using docker on my NAS now, probably for the best in the long run --- docker-compose.yml | 251 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 251 insertions(+) create mode 100644 docker-compose.yml (limited to 'docker-compose.yml') diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..fd91317 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,251 @@ + +version: "3.9" + +networks: + proxy: + external: true + +services: + baikal: + image: ckulka/baikal:nginx + container_name: baikal + volumes: + - $CONFDIR/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 + - $CONFDIR/cgit/cgitrc:/config/cgitrc + - $CONFDIR/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: dgtlmoon/changedetection.io + container_name: changedetection + volumes: + - $CONFDIR/changedetection:/datastore + 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: + - $CONFDIR/jackett:/config + - $SYNCDIR:/downloads + restart: unless-stopped + depends_on: + - traefik + networks: + - proxy + labels: + traefik.frontend.rule: "Host:jack.$DOMAIN" + traefik.port: "9117" + traefik.frontend.auth.basic.usersFile: "/app/htpasswd" + php-dev: + image: php:apache + container_name: php-dev + restart: unless-stopped + command: bash -c "sed -i 's|33|$PUID|g' /etc/passwd && a2enmod rewrite && apache2-foreground" + volumes: + - $SYNCDIR/src/php-dev:/var/www/html + restart: unless-stopped + depends_on: + - traefik + networks: + - proxy + labels: + traefik.frontend.rule: "Host:dev.$DOMAIN" + traefik.port: "80" + postgres: + image: postgres:alpine + container_name: postgres + restart: unless-stopped + ports: + - 44432:5432 + environment: + - POSTGRES_PASSWORD=$DBPASSWORD + volumes: + - $CONFDIR/postgres:/var/lib/postgresql/data + rclone: + image: rclone/rclone + container_name: rclone + user: "$PUID:$PGID" + read_only: true + command: "serve http '$RCLONE_REMOTE_MEDIA' --addr '0.0.0.0:8080' -vv" + volumes: + - $CONFDIR/rclone:/config/rclone/ + restart: unless-stopped + depends_on: + - traefik + networks: + - proxy + labels: + traefik.frontend.rule: "Host:repo.$DOMAIN" + traefik.port: "8080" + traefik.frontend.auth.basic.usersFile: "/app/htpasswd" + syncthing: + image: linuxserver/syncthing + container_name: syncthing + environment: + - PGID=$PGID + - PUID=$PUID + volumes: + - $CONFDIR/syncthing:/config + - $SYNCDIR:/vault + ports: + - 22000:22000 + - 21027:21027/udp + restart: unless-stopped + networks: + - proxy + labels: + traefik.frontend.rule: "Host:sync.$DOMAIN" + traefik.port: "8384" + traefik: + image: traefik:1.7 + container_name: traefik + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - $CONFDIR/traefik/traefik.toml:/etc/traefik/traefik.toml + - $CONFDIR/traefik/acme.json:/etc/traefik/acme.json + - $CONFDIR/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 + container_name: vaultwarden + volumes: + - $CONFDIR/vaultwarden:/data + environment: + - WEBSOCKET_ENABLED=false + - SIGNUPS_ALLOWED=false + ports: + - 3012:3012 + restart: unless-stopped + depends_on: + - traefik + networks: + - proxy + labels: + traefik.frontend.rule: "Host:pass.$DOMAIN" + traefik.port: "80" + watchtower: + image: containrrr/watchtower + container_name: watchtower + restart: unless-stopped + volumes: + - /var/run/docker.sock:/var/run/docker.sock + wireguard: + image: place1/wg-access-server + container_name: wireguard + restart: unless-stopped + cap_add: + - NET_ADMIN + environment: + WG_ADMIN_PASSWORD: $WG_WEBUI_PASS + WG_WIREGUARD_PRIVATE_KEY: $WG_PRIVKEY + volumes: + - $CONFDIR/wireguard:/data + ports: + - 51820:51820/udp + devices: + - "/dev/net/tun:/dev/net/tun" + networks: + - proxy + labels: + traefik.frontend.rule: "Host:vpn.$DOMAIN" + traefik.port: "8000" -- cgit v1.2.3