From 40a49f71d679eb37a8828e216281e206be5942a4 Mon Sep 17 00:00:00 2001 From: whitney Date: Sun, 5 Nov 2023 16:17:36 -0800 Subject: [PATCH] blank all docker-compose.yml files --- covid19/.gitignore | 1 + ...compose.yml => docker-compose.yml.blanked} | 12 ++-- gitea/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 26 +++++---- grafana/.gitignore | 1 + ...compose.yml => docker-compose.yml.blanked} | 17 +++--- jenkins/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 12 ++-- minecraft/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 26 ++++----- monica/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 35 +++++------- nordvpn/docker-compose.yml.blanked | 34 ++++++++++++ photoprism/.gitignore | 4 +- photoprism/docker-compose.yml.blanked | 55 +++++++++---------- plex/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 4 +- portainer/.gitignore | 2 + ...compose.yml => docker-compose.yml.blanked} | 9 ++- 19 files changed, 145 insertions(+), 103 deletions(-) rename covid19/{docker-compose.yml => docker-compose.yml.blanked} (81%) create mode 100644 gitea/.gitignore rename gitea/{docker-compose.yml => docker-compose.yml.blanked} (61%) rename grafana/{docker-compose.yml => docker-compose.yml.blanked} (86%) create mode 100644 jenkins/.gitignore rename jenkins/{docker-compose.yml => docker-compose.yml.blanked} (58%) rename minecraft/{docker-compose.yml => docker-compose.yml.blanked} (87%) create mode 100644 monica/.gitignore rename monica/{docker-compose.yml => docker-compose.yml.blanked} (50%) create mode 100644 nordvpn/docker-compose.yml.blanked create mode 100644 plex/.gitignore rename plex/{docker-compose.yml => docker-compose.yml.blanked} (91%) create mode 100644 portainer/.gitignore rename portainer/{docker-compose.yml => docker-compose.yml.blanked} (80%) diff --git a/covid19/.gitignore b/covid19/.gitignore index b62dc6f..e82e78d 100644 --- a/covid19/.gitignore +++ b/covid19/.gitignore @@ -1,4 +1,5 @@ schema/ covidapp-repo/ covidapp-autoupdater/ +docker-compose.yml diff --git a/covid19/docker-compose.yml b/covid19/docker-compose.yml.blanked similarity index 81% rename from covid19/docker-compose.yml rename to covid19/docker-compose.yml.blanked index cdc86ca..a404c06 100644 --- a/covid19/docker-compose.yml +++ b/covid19/docker-compose.yml.blanked @@ -9,7 +9,6 @@ networks: services: covid_app: image: kr/covidapp - container_name: covidapp restart: always networks: - covidapp-network @@ -18,25 +17,26 @@ services: depends_on: - mysql ports: - - "1337:1337" + - "[[HOST_PORT]]:1337" labels: - - traefik.http.routers.covidapp.rule=Host(`covid.whitney.rip`) + - traefik.http.routers.covidapp.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.covidapp.tls=true - traefik.http.routers.covidapp.tls.certresolver=lets-encrypt - traefik.http.services.covidapp.loadbalancer.server.port=1337 - - traefik.port=1337 + - traefik.port=[[HOST_PORT]] mysql: image: mysql/mysql-server:latest container_name: mysql_covidapp restart: always environment: - MYSQL_ROOT_PASSWORD: 'root' + MYSQL_ROOT_PASSWORD: '[[MYSQL_ROOT_PASSWORD]]' command: mysqld --sql_mode="" --character-set-server=utf8mb4 --init-connect='SET NAMES UTF8;' --innodb-flush-log-at-trx-commit=0 ports: - - "3306:3306" + - "[[HOST_PORT]]:3306" volumes: - /data/coldstorage/covid19/mysql:/var/lib/mysql - ./schema:/docker-entrypoint-initdb.d/:ro networks: - covidapp-network + diff --git a/gitea/.gitignore b/gitea/.gitignore new file mode 100644 index 0000000..9b05ea1 --- /dev/null +++ b/gitea/.gitignore @@ -0,0 +1,2 @@ +docker-compose.yml + diff --git a/gitea/docker-compose.yml b/gitea/docker-compose.yml.blanked similarity index 61% rename from gitea/docker-compose.yml rename to gitea/docker-compose.yml.blanked index ef5db64..b2499de 100644 --- a/gitea/docker-compose.yml +++ b/gitea/docker-compose.yml.blanked @@ -1,3 +1,5 @@ +version: "3" + networks: gitea_network: external: false @@ -11,13 +13,13 @@ services: depends_on: - database environment: - - USER_UID=1001 - - USER_GID=1001 + - USER_UID=[[USER_ID]] + - USER_GID=[[USER_ID]] - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=database:5432 - - GITEA__database__HAME=gitea - - GITEA__database__USER=gitea - - GITEA__database__PASSWD=gitea + - GITEA__database__NAME=[[DATABASE_NAME]] + - GITEA__database__USER=[[DATABASE_USER]] + - GITEA__database__PASSWD=[[DATABASE_PASSWD]] restart: always networks: - gitea_network @@ -27,14 +29,14 @@ services: - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - - "3300:3000" + - "[[HOST_PORT]]:3000" - "222:22" labels: - - traefik.http.routers.gitea.rule=Host(`git.whitney.rip`) + - traefik.http.routers.gitea.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.gitea.tls=true - traefik.http.routers.gitea.tls.certresolver=lets-encrypt - - traefik.http.services.gitea.loadbalancer.server.port=3300 - - traefik.port=3300 + - traefik.http.services.gitea.loadbalancer.server.port=3000 + - traefik.port=[[HOST_PORT]] database: image: postgres:14 @@ -42,9 +44,9 @@ services: networks: - gitea_network environment: - - POSTGRES_USER=gitea - - POSTGRES_PASSWORD=gitea - - POSTGRES_DB=gitea + - POSTGRES_USER=[[DATABASE_USER]] + - POSTGRES_PASSWORD=[[DATABASE_PASSWD]] + - POSTGRES_DB=[[DATABASE_NAME]] volumes: - /data/persistent/gitea/database:/var/lib/postgresql/data diff --git a/grafana/.gitignore b/grafana/.gitignore index a4cd3b8..b67e97c 100644 --- a/grafana/.gitignore +++ b/grafana/.gitignore @@ -1,2 +1,3 @@ olomana.ini +docker-compose.yml diff --git a/grafana/docker-compose.yml b/grafana/docker-compose.yml.blanked similarity index 86% rename from grafana/docker-compose.yml rename to grafana/docker-compose.yml.blanked index 74327d6..a03d6c1 100644 --- a/grafana/docker-compose.yml +++ b/grafana/docker-compose.yml.blanked @@ -15,30 +15,31 @@ volumes: services: grafana: image: grafana/grafana - user: "1001" + user: "[[USER_ID]]" container_name: grafana restart: always - networks: + networks: - grafana-network - traefik_traefik-network ports: - - "3000:3000" + - "[[HOST_PORT]]:3000" volumes: - ./olomana.ini:/etc/grafana/grafana.ini - /data/coldstorage/grafana_data:/var/lib/grafana labels: - - traefik.http.routers.grafana.rule=Host(`grafana.whitney.rip`) + - traefik.http.routers.grafana.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.grafana.tls=true - traefik.http.routers.grafana.tls.certresolver=lets-encrypt - traefik.http.services.grafana.loadbalancer.server.port=3000 - - traefik.port=3000 + - traefik.port=[[HOST_PORT]] depends_on: - node_exporter - prometheus + node_exporter: image: quay.io/prometheus/node-exporter:latest container_name: node_exporter - user: "995:995" + user: "[[USER_ID]]:[[GROUP_ID]]" restart: always networks: - grafana-network @@ -49,6 +50,7 @@ services: - "/:/host:ro,rslave" depends_on: - prometheus + prometheus: image: prom/prometheus:latest container_name: prometheus @@ -57,7 +59,7 @@ services: - grafana-network - minecraft_minecraft_network ports: - - "9090:9090" + - "[[HOST_PORT]]:9090" volumes: - "./prometheus.yml:/etc/prometheus.yml" - prometheus_data:/prometheus @@ -67,4 +69,3 @@ services: - "--web.console.libraries=/usr/share/prometheus/console_libraries" - "--web.console.templates=/usr/share/prometheus/consoles" - diff --git a/jenkins/.gitignore b/jenkins/.gitignore new file mode 100644 index 0000000..9b05ea1 --- /dev/null +++ b/jenkins/.gitignore @@ -0,0 +1,2 @@ +docker-compose.yml + diff --git a/jenkins/docker-compose.yml b/jenkins/docker-compose.yml.blanked similarity index 58% rename from jenkins/docker-compose.yml rename to jenkins/docker-compose.yml.blanked index 4a9fcd7..97f2943 100644 --- a/jenkins/docker-compose.yml +++ b/jenkins/docker-compose.yml.blanked @@ -12,16 +12,18 @@ services: networks: - traefik_traefik-network privileged: true - user: root + user: [[USER]] ports: - - 8082:8080 + - [[HOST_PORT]]:8080 - 50000:50000 volumes: - /data/coldstorage/jenkins:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/local/bin/docker:/usr/local/bin/docker labels: - - "traefik.http.routers.jenkins.rule=Host(`jenkins.whitney.rip`)" - - "traefik.http.routers.jenkins.tls=true" - - "traefik.http.routers.jenkins.tls.certresolver=lets-encrypt" + - traefik.http.routers.jenkins.rule=Host(`[[SITE_URL]]`) + - traefik.http.routers.jenkins.tls=true + - traefik.http.routers.jenkins.tls.certresolver=lets-encrypt + - traefik.http.services.jenkins.loadbalancer.server.port=8080 + - traefik.port=[[HOST_PORT]] diff --git a/minecraft/.gitignore b/minecraft/.gitignore index c4dcf8d..8b8a21e 100644 --- a/minecraft/.gitignore +++ b/minecraft/.gitignore @@ -1,2 +1,4 @@ maps/ plugins/ +docker-compose.yml + diff --git a/minecraft/docker-compose.yml b/minecraft/docker-compose.yml.blanked similarity index 87% rename from minecraft/docker-compose.yml rename to minecraft/docker-compose.yml.blanked index 9ab7fe3..c3a34de 100644 --- a/minecraft/docker-compose.yml +++ b/minecraft/docker-compose.yml.blanked @@ -12,13 +12,13 @@ services: minecraft_creative: image: itzg/minecraft-server:latest container_name: minecraft_creative - restart: always + restart: always networks: - grafana_grafana-network - minecraft_network ports: - - "25566:25565" - - "9226:9225" + - "[[HOST_PORT_1]]:25565" + - "[[METRICS_HOST_PORT_1]]:9225" volumes: - /data/persistent/minecraft_creative:/data environment: @@ -41,15 +41,15 @@ services: minecraft_2023: image: itzg/minecraft-server:latest container_name: minecraft_2023 - restart: always + restart: always networks: - traefik_traefik-network - grafana_grafana-network - minecraft_network ports: - - "25565:25565" - - "9225:9225" - - "8123:8123" + - "[[HOST_PORT_2]]:25565" + - "[[METRICS_HOST_PORT_2]]:9225" + - "[[DYNMAP_PORT]]:8123" volumes: - /data/persistent/minecraft_2023:/data environment: @@ -67,20 +67,20 @@ services: - MOTD="\u00A77Pinnerland, powered by \u00A75P\u00A79W\u00A75S\u00A77\!" - ALLOW_FLIGHT=false labels: - - traefik.http.routers.minemap.rule=Host(`minemap.whitney.rip`) + - traefik.http.routers.minemap.rule=Host(`[[MINEMAP_URL]]`) - traefik.http.routers.minemap.tls=true - traefik.http.routers.minemap.tls.certresolver=lets-encrypt - traefik.http.services.minemap.loadbalancer.server.port=8123 - - traefik.port=8123 + - traefik.port=[[HOST_PORT_2]] minecraft_skyblock: image: itzg/minecraft-server:latest container_name: minecraft_skyblock - restart: always + restart: always networks: - minecraft_network ports: - - "25564:25565" + - "[[HOST_PORT_3]]:25565" volumes: - /data/persistent/minecraft_skyblock:/data environment: @@ -107,11 +107,9 @@ services: - /data/persistent/minecraft_2023/world:/world environment: - RCON_HOST=127.0.0.1 - - RCON_PORT=25565 + - RCON_PORT=[[HOST_PORT_2]] - HTTP_PORT=2565 - FORGE_SERVER="False" - PAPER_SERVER="True" - DYNMAP_ENABLED="True" - - diff --git a/monica/.gitignore b/monica/.gitignore new file mode 100644 index 0000000..9b05ea1 --- /dev/null +++ b/monica/.gitignore @@ -0,0 +1,2 @@ +docker-compose.yml + diff --git a/monica/docker-compose.yml b/monica/docker-compose.yml.blanked similarity index 50% rename from monica/docker-compose.yml rename to monica/docker-compose.yml.blanked index 0387047..0a7150f 100644 --- a/monica/docker-compose.yml +++ b/monica/docker-compose.yml.blanked @@ -1,48 +1,41 @@ -version: "3.4" +version: "3" networks: traefik_traefik-network: external: true - services: app: image: monica depends_on: - db ports: - - 8022:80 + - [[HOST_PORT]]:80 networks: - traefik_traefik-network environment: - - APP_KEY=base64:Hl8b+vnvibkFbOR0CPQVmt5mLCB0mnXqfo8aIbNPRxo= - - DB_HOST=db - - DB_USERNAME=monica - - DB_PASSWORD=secret + - APP_KEY=[[APP_KEY]] + - DB_HOST=[[DATABASE_HOST]] + - DB_USERNAME=[[DATABASE_USERNAME]] + - DB_PASSWORD=[[DATABASE_PASSWORD]] volumes: - - data:/var/www/html/storage + - /data/persistent/monica/app:/var/www/html/storage restart: always labels: - - traefik.http.routers.monica.rule=Host(`monica.whitney.rip`) + - traefik.http.routers.monica.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.monica.tls=true - traefik.http.routers.monica.tls.certresolver=lets-encrypt - - traefik.http.services.monica.loadbalancer.server.port=8022 - - traefik.port=8022 + - traefik.http.services.monica.loadbalancer.server.port=80 + - traefik.port=[[HOST_PORT]] db: image: mysql:5.7 environment: - MYSQL_RANDOM_ROOT_PASSWORD=true - - MYSQL_DATABASE=monica - - MYSQL_USER=monica - - MYSQL_PASSWORD=secret + - MYSQL_DATABASE=[[DATABASE_HOST]] + - MYSQL_USER=[[DATABASE_USERNAME]] + - MYSQL_PASSWORD=[[DATABASE_PASSWORD]] volumes: - - mysql:/var/lib/mysql + - /data/persistent/monica/db:/var/lib/mysql restart: always -volumes: - data: - name: data - mysql: - name: mysql - diff --git a/nordvpn/docker-compose.yml.blanked b/nordvpn/docker-compose.yml.blanked new file mode 100644 index 0000000..70a4a8e --- /dev/null +++ b/nordvpn/docker-compose.yml.blanked @@ -0,0 +1,34 @@ +version: "3" + +services: + nordlynx: + image: ghcr.io/bubuntux/nordlynx + container_name: nordlynx + cap_add: + - NET_ADMIN + environment: + - PRIVATE_KEY=[[PRIVATE_KEY]] + - NET_LOCAL=192.168.1.0/24 + - TZ=America/Los_Angeles + - QUERY=filters\[country_id\]=202 + ports: + - "[[HOST_URL]]:8888" + restart: "unless-stopped" + labels: + - traefik.enable=false + + qb: + image: ghcr.io/linuxserver/qbittorrent:latest + container_name: qb + restart: always + network_mode: service:nordlynx + environment: + - WEBUI_PORT=[[HOST_URL]] + volumes: + - /data/write/qb/appdata/config:/config + - /data/write/qb/downloads:/downloads + depends_on: + - nordlynx + labels: + - traefik.enable=false + diff --git a/photoprism/.gitignore b/photoprism/.gitignore index db41056..9b05ea1 100644 --- a/photoprism/.gitignore +++ b/photoprism/.gitignore @@ -1,2 +1,2 @@ -docker-compose-public.yml -docker-compose-private.yml +docker-compose.yml + diff --git a/photoprism/docker-compose.yml.blanked b/photoprism/docker-compose.yml.blanked index 8f6ef5a..85289a3 100644 --- a/photoprism/docker-compose.yml.blanked +++ b/photoprism/docker-compose.yml.blanked @@ -5,9 +5,8 @@ networks: external: true services: - photoprism-admin: + photoprism-private: image: photoprism/photoprism - container_name: photoprism-private restart: always networks: - traefik_traefik-network @@ -15,34 +14,33 @@ services: - seccomp:unconfined - apparmor:unconfined ports: - - "2342:2342" + - "[[HOST_PORT]]:2342" volumes: - - /data/coldstorage/photoprism-private/storage:/photoprism/storage - - /data/coldstorage/photoprism-private/originals:/photoprism/originals + - /data/coldstorage/photoprism/storage:/photoprism/storage + - /data/coldstorage/photoprism/originals:/photoprism/originals environment: - - PHOTOPRISM_ADMIN_USER=ADMIN_USER - - PHOTOPRISM_ADMIN_PASSWORD=ADMIN_PASSWORD + - PHOTOPRISM_ADMIN_USER=[[ADMIN_USER]] + - PHOTOPRISM_ADMIN_PASSWORD=[[ADMIN_PASS]] - PHOTOPRISM_LOG_LEVEL=info - - PHOTOPRISM_SITE_URL=SITE_URL_WITH_HTTPS - - PHOTOPRISM_HTTP_PORT=2342 + - PHOTOPRISM_SITE_URL=[[SITE_URL_WITH_HTTPS]] - PHOTOPRISM_ORIGINALS_LIMIT=5000 - PHOTOPRISM_HTTP_COMPRESSION=gzip - PHOTOPRISM_EXPERIMENTAL=false - PHOTOPRISM_DISABLE_FACES=true - PHOTOPRISM_DISABLE_RAW=false - PHOTOPRISM_JPEG_QUALITY=100 - - PHOTOPRISM_SITE_CAPTION=PWS Gallery - - PHOTOPRISM_SITE_DESCRIPTION=Read-only photos of PWS - - PHOTOPRISM_SITE_AUTHOR=PWS + - PHOTOPRISM_SITE_CAPTION=[[SITE_CAPTION]] + - PHOTOPRISM_SITE_DESCRIPTION=[[SITE_DESCRIPTION]] + - PHOTOPRISM_SITE_AUTHOR=[[SITE_AUTHOR]] labels: - - traefik.http.routers.privatephotos.rule=Host(`SITE_URL`) - - traefik.http.routers.privatephotos.tls=true - - traefik.http.routers.privatephotos.tls.certresolver=lets-encrypt + - traefik.http.routers.private-photos.rule=Host(`[[SITE_URL_WITH_HTTPS]]`) + - traefik.http.routers.private-photos.tls=true + - traefik.http.routers.private-photos.tls.certresolver=lets-encrypt + - traefik.http.services.private-photos.loadbalancer.server.port=2342 + - traefik.port=[[HOST_PORT]] - # Additional, readonly instance with the same values as above. Except there is no admin user and the instance is readonly. photoprism-public: image: photoprism/photoprism - container_name: photoprism-public restart: always networks: - traefik_traefik-network @@ -50,27 +48,28 @@ services: - seccomp:unconfined - apparmor:unconfined ports: - - "2343:2343" + - "[[DIFFERENT_HOST_PORT]]:2342" volumes: - - /data/coldstorage/photoprism-public/storage:/photoprism/storage - - /data/coldstorage/photoprism-public/originals:/photoprism/originals + - /data/coldstorage/photoprism/storage:/photoprism/storage + - /data/coldstorage/photoprism/originals:/photoprism/originals environment: - PHOTOPRISM_READ_ONLY=true - PHOTOPRISM_AUTH_MODE=public - PHOTOPRISM_LOG_LEVEL=info - - PHOTOPRISM_SITE_URL=SITE_URL_WITH_HTTPS - - PHOTOPRISM_HTTP_PORT=2343 + - PHOTOPRISM_SITE_URL=[[DIFFERENT_SITE_URL_WITH_HTTPS]] - PHOTOPRISM_ORIGINALS_LIMIT=5000 - PHOTOPRISM_HTTP_COMPRESSION=gzip - PHOTOPRISM_EXPERIMENTAL=false - PHOTOPRISM_DISABLE_FACES=true - PHOTOPRISM_DISABLE_RAW=false - PHOTOPRISM_JPEG_QUALITY=100 - - PHOTOPRISM_SITE_CAPTION=PWS Gallery - - PHOTOPRISM_SITE_DESCRIPTION=Photos of PWS - - PHOTOPRISM_SITE_AUTHOR=PWS + - PHOTOPRISM_SITE_CAPTION=[[SITE_CAPTION]] + - PHOTOPRISM_SITE_DESCRIPTION=[[SITE_DESCRIPTION]] + - PHOTOPRISM_SITE_AUTHOR=[[SITE_AUTHOR]] labels: - - traefik.http.routers.publicphotos.rule=Host(`SITE_URL`) - - traefik.http.routers.publicphotos.tls=true - - traefik.http.routers.publicphotos.tls.certresolver=lets-encrypt + - traefik.http.routers.public-photos.rule=Host(`[[DIFFERENT_SITE_URL_WITH_HTTPS]]`) + - traefik.http.routers.public-photos.tls=true + - traefik.http.routers.public-photos.tls.certresolver=lets-encrypt + - traefik.http.services.public-photos.loadbalancer.server.port=2342 + - traefik.port=[[DIFFERENT_HOST_PORT]] diff --git a/plex/.gitignore b/plex/.gitignore new file mode 100644 index 0000000..9b05ea1 --- /dev/null +++ b/plex/.gitignore @@ -0,0 +1,2 @@ +docker-compose.yml + diff --git a/plex/docker-compose.yml b/plex/docker-compose.yml.blanked similarity index 91% rename from plex/docker-compose.yml rename to plex/docker-compose.yml.blanked index 23cde8d..2901b96 100644 --- a/plex/docker-compose.yml +++ b/plex/docker-compose.yml.blanked @@ -7,8 +7,8 @@ services: network_mode: host restart: always environment: - - PUID=1000 - - PGID=1000 + - PUID=[[USER_ID]] + - PGID=[[GROUP_ID]] - VERSION=docker volumes: - /data/persistent/plex/:/config diff --git a/portainer/.gitignore b/portainer/.gitignore new file mode 100644 index 0000000..9b05ea1 --- /dev/null +++ b/portainer/.gitignore @@ -0,0 +1,2 @@ +docker-compose.yml + diff --git a/portainer/docker-compose.yml b/portainer/docker-compose.yml.blanked similarity index 80% rename from portainer/docker-compose.yml rename to portainer/docker-compose.yml.blanked index fe03374..d3fd9c6 100644 --- a/portainer/docker-compose.yml +++ b/portainer/docker-compose.yml.blanked @@ -14,15 +14,14 @@ services: networks: - traefik_traefik-network ports: - - "8008:8000" - - "9009:9000" - - "9443:9443" + - "[[HOST_URL]]:9000" volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - portainer_data:/data labels: - - traefik.http.routers.portainer.rule=Host(`admin.whitney.rip`) + - traefik.http.routers.portainer.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.portainer.tls=true - traefik.http.routers.portainer.tls.certresolver=lets-encrypt - - traefik.http.services.portainer.loadbalancer.server.port=9443 + - traefik.http.services.portainer.loadbalancer.server.port=9000 + - traefik.port=[[HOST_URL]]