Update blanked compose files + add Makefile

This commit is contained in:
whitney 2024-05-29 14:36:26 -07:00
parent 9f1ee8a896
commit 0bbeebe177
16 changed files with 190 additions and 99 deletions

54
Makefile Normal file
View File

@ -0,0 +1,54 @@
MODULES = traefik code-server covid19 gitea grafana homepage jenkins minecraft monica nordvpn photoprism plex portainer
DOCKER_COMPOSE_DOWN = docker-compose down
DOCKER_PRUNE = docker system prune -f
DOCKER_COMPOSE_UP = docker-compose up -d
DOCKER_COMPOSE_BUILD = docker-compose build
DOCKER_START = $(DOCKER_COMPOSE_DOWN) && $(DOCKER_PRUNE) && $(DOCKER_COMPOSE_UP)
DOCKER_BUILD = $(DOCKER_COMPOSE_DOWN) && $(DOCKER_PRUNE) && $(DOCKER_COMPOSE_BUILD) && $(DOCKER_COMPOSE_UP)
DOCKER_NETWORK_CREATE = docker network create
.PHONY: $(MODULES)
all: $(MODULES)
code-server:
cd code-server && $(DOCKER_BUILD)
covid19:
cd covid19/covidapp-repo && docker build --tag="kr/covidapp" .
cd covid19 && $(DOCKER_START)
@echo "Setup complete, see README.md for instructions on seeding database."
gitea:
cd gitea && $(DOCKER_BUILD)
grafana: minecraft
cd grafana && $(DOCKER_COMPOSE_BUILD) && $(DOCKER_COMPOSE_UP)
homepage:
cd homepage && $(DOCKER_BUILD)
jenkins:
cd jenkins && $(DOCKER_BUILD)
minecraft:
cd minecraft && $(DOCKER_NETWORK_CREATE) grafana_grafana-network && $(DOCKER_COMPOSE_UP)
monica:
cd monica && $(DOCKER_BUILD)
nordvpn:
cd nordvpn && $(DOCKER_BUILD)
photoprism:
cd photoprism && $(DOCKER_BUILD)
plex:
cd plex && $(DOCKER_BUILD)
portainer:
cd portainer && $(DOCKER_BUILD)
traefik:
cd traefik && $(DOCKER_NETWORK_CREATE) traefik_traefik-network && $(DOCKER_COMPOSE_UP)

1
code-server/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
docker-compose.yml

View File

@ -1,7 +1,7 @@
version: '3.7' version: '3.7'
networks: networks:
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
@ -10,7 +10,7 @@ services:
container_name: code-server container_name: code-server
restart: unless-stopped restart: unless-stopped
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
volumes: volumes:
- /pwspool/software/code-server/config:/config - /pwspool/software/code-server/config:/config
ports: ports:
@ -19,14 +19,14 @@ services:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
- TZ=Etc/UTC - TZ=Etc/UTC
- PASSWORD=jakenotes - PASSWORD=[PASS]
#- HASHED_PASSWORD=TODO #- HASHED_PASSWORD=[PASS_HASH]
- SUDO_PASSWORD=jakenotes - SUDO_PASSWORD=[SUDO_PASS]
#- SUDO_PASSWORD_HASH=TODO #- SUDO_PASSWORD_HASH=[SUDO_PASS_HASH]
- PROXY_DOMAIN=code.whitney.rip - PROXY_DOMAIN=[SUBDOMAIN_URL]
- DEFAULT_WORKSPACE=/config/workspace - DEFAULT_WORKSPACE=/config/workspace
labels: labels:
- traefik.http.routers.code.rule=Host(`code.whitney.rip`) - traefik.http.routers.code.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.code.tls=true - traefik.http.routers.code.tls=true
- traefik.http.routers.code.tls.certresolver=lets-encrypt - traefik.http.routers.code.tls.certresolver=lets-encrypt
- traefik.http.services.code.loadbalancer.server.port=8443 - traefik.http.services.code.loadbalancer.server.port=8443

View File

@ -3,21 +3,22 @@ version: "3"
networks: networks:
covidapp-network: covidapp-network:
driver: bridge driver: bridge
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
covid_app: covid_app:
image: kr/covidapp image: kr/covidapp
restart: always container_name: covidapp
restart: unless-stopped
networks: networks:
- covidapp-network - covidapp-network
- traefik_traefik-network - [TRAEFIK_NETWORK]
build: . build: .
depends_on: depends_on:
- mysql - mysql
labels: labels:
- traefik.http.routers.covidapp.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.covidapp.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.covidapp.tls=true - traefik.http.routers.covidapp.tls=true
- traefik.http.routers.covidapp.tls.certresolver=lets-encrypt - traefik.http.routers.covidapp.tls.certresolver=lets-encrypt
- traefik.http.services.covidapp.loadbalancer.server.port=1337 - traefik.http.services.covidapp.loadbalancer.server.port=1337
@ -26,15 +27,15 @@ services:
mysql: mysql:
image: mysql/mysql-server:latest image: mysql/mysql-server:latest
container_name: mysql_covidapp container_name: mysql_covidapp
restart: always restart: unless-stopped
environment: environment:
MYSQL_ROOT_PASSWORD: '[[MYSQL_ROOT_PASSWORD]]' MYSQL_ROOT_PASSWORD: '[MYSQL_ROOT_PASS]'
command: mysqld --sql_mode="" --character-set-server=utf8mb4 --init-connect='SET NAMES UTF8;' --innodb-flush-log-at-trx-commit=0 command: mysqld --sql_mode="" --character-set-server=utf8mb4 --init-connect='SET NAMES UTF8;' --innodb-flush-log-at-trx-commit=0
ports:
- "[[HOST_PORT]]:3306"
volumes: volumes:
- /pwspool/software/covid19/mysql:/var/lib/mysql - /pwspool/software/covid19/mysql:/var/lib/mysql
- ./schema:/docker-entrypoint-initdb.d/:ro - ./schema:/docker-entrypoint-initdb.d/:ro
networks: networks:
- covidapp-network - covidapp-network
labels:
- traefik.enable=false

View File

@ -3,33 +3,35 @@ version: "3"
networks: networks:
gitea_network: gitea_network:
external: false external: false
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
server: server:
image: gitea/gitea:latest image: gitea/gitea:latest
container_name: gitea container_name: gitea
restart: unless-stopped
depends_on: depends_on:
- database - database
environment: environment:
- USER_UID=[[USER_ID]] - USER_UID=1001
- USER_GID=[[USER_ID]] - USER_GID=1001
- DOMAIN=[SUBDOMAIN_URL]
- PROTOCOL=http
- GITEA__database__DB_TYPE=postgres - GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=database:5432 - GITEA__database__HOST=database:5432
- GITEA__database__NAME=[[DATABASE_NAME]] - GITEA__database__NAME=[GITEA_DB_NAME]
- GITEA__database__USER=[[DATABASE_USER]] - GITEA__database__USER=[GITEA_DB_USER]
- GITEA__database__PASSWD=[[DATABASE_PASSWD]] - GITEA__database__PASSWD=[GITEA_DB_PASS]
restart: always
networks: networks:
- gitea_network - gitea_network
- traefik_traefik-network - [TRAEFIK_NETWORK]
volumes: volumes:
- /pwspool/software/gitea/gitea:/data - /pwspool/software/gitea/gitea:/data
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
labels: labels:
- traefik.http.routers.gitea.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.gitea.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.gitea.tls=true - traefik.http.routers.gitea.tls=true
- traefik.http.routers.gitea.tls.certresolver=lets-encrypt - traefik.http.routers.gitea.tls.certresolver=lets-encrypt
- traefik.http.services.gitea.loadbalancer.server.port=3000 - traefik.http.services.gitea.loadbalancer.server.port=3000
@ -37,13 +39,15 @@ services:
database: database:
image: postgres:14 image: postgres:14
restart: always
networks: networks:
- gitea_network - gitea_network
restart: unless-stopped
environment: environment:
- POSTGRES_USER=[[DATABASE_USER]] - POSTGRES_USER=[GITEA_DB_USER]
- POSTGRES_PASSWORD=[[DATABASE_PASSWD]] - POSTGRES_PASSWORD=[GITEA_DB_PASS]
- POSTGRES_DB=[[DATABASE_NAME]] - POSTGRES_DB=[GITEA_DB_NAME]
volumes: volumes:
- /pwspool/software/gitea/database:/var/lib/postgresql/data - /pwspool/software/gitea/database:/var/lib/postgresql/data
labels:
- traefik.enable=false

View File

@ -3,29 +3,28 @@ version: "3"
networks: networks:
grafana-network: grafana-network:
driver: bridge driver: bridge
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
minecraft_minecraft_network: [MINECRAFT_NETWORK]:
external: true external: true
volumes: volumes:
grafana_data: {}
prometheus_data: {} prometheus_data: {}
services: services:
grafana: grafana:
image: grafana/grafana image: grafana/grafana
user: "[[USER_ID]]" user: "[USER_ID]"
container_name: grafana container_name: grafana
restart: always restart: unless-stopped
networks: networks:
- grafana-network - grafana-network
- traefik_traefik-network - [TRAEFIK_NETWORK]
volumes: volumes:
- ./olomana.ini:/etc/grafana/grafana.ini - ./olomana.ini:/etc/grafana/grafana.ini
- /pwspool/software/grafana:/var/lib/grafana - /pwspool/software/grafana:/var/lib/grafana
labels: labels:
- traefik.http.routers.grafana.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.grafana.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.grafana.tls=true - traefik.http.routers.grafana.tls=true
- traefik.http.routers.grafana.tls.certresolver=lets-encrypt - traefik.http.routers.grafana.tls.certresolver=lets-encrypt
- traefik.http.services.grafana.loadbalancer.server.port=3000 - traefik.http.services.grafana.loadbalancer.server.port=3000
@ -37,8 +36,8 @@ services:
node_exporter: node_exporter:
image: quay.io/prometheus/node-exporter:latest image: quay.io/prometheus/node-exporter:latest
container_name: node_exporter container_name: node_exporter
user: "[[USER_ID]]:[[GROUP_ID]]" user: "[USER_ID]:[GROUP_ID]"
restart: always restart: unless-stopped
networks: networks:
- grafana-network - grafana-network
pid: host pid: host
@ -55,7 +54,7 @@ services:
restart: always restart: always
networks: networks:
- grafana-network - grafana-network
- minecraft_minecraft_network - [MINECRAFT_NETWORK]
volumes: volumes:
- "./prometheus.yml:/etc/prometheus.yml" - "./prometheus.yml:/etc/prometheus.yml"
- prometheus_data:/prometheus - prometheus_data:/prometheus

View File

@ -1,18 +1,19 @@
version: '3' version: '3'
networks: networks:
[[TRAEFIK_NETWORK]]: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
web: web:
image: homepage image: homepage
restart: unless-stopped
networks: networks:
- [[TRAEFIK_NETWORK]] - [TRAEFIK_NETWORK]
build: . build: .
labels: labels:
- traefik.http.routers.homepage.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.homepage.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.homepage.tls=true - traefik.http.routers.homepage.tls=true
- traefik.http.routers.homepage.tls.certresolver=lets-encrypt - traefik.http.routers.homepage.tls.certresolver=lets-encrypt
- traefik.http.services.homepage.loadbalancer.server.port=[[NGINX_INTERNAL_PORT]] - traefik.http.services.homepage.loadbalancer.server.port=[[NGINX_INTERNAL_PORT]]
- traefik.port=[[NGINX_INTERNAL_PORT]] - traefik.port=[[NGINX_INTERNAL_PORT]]

View File

@ -1,24 +1,24 @@
version: '3.7' version: '3.7'
networks: networks:
traefik_traefik-network: TRAEFIK_NETWORK:
external: true external: true
services: services:
jenkins: jenkins:
image: jenkins/jenkins:lts image: jenkins/jenkins:lts
container_name: jenkins container_name: jenkins
restart: always restart: unless-stopped
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
privileged: true privileged: true
user: [[USER]] user: root
volumes: volumes:
- /pwspool/software/jenkins:/var/jenkins_home - /pwspool/software/jenkins:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- /usr/local/bin/docker:/usr/local/bin/docker - /usr/local/bin/docker:/usr/local/bin/docker
labels: labels:
- traefik.http.routers.jenkins.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.jenkins.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.jenkins.tls=true - traefik.http.routers.jenkins.tls=true
- traefik.http.routers.jenkins.tls.certresolver=lets-encrypt - traefik.http.routers.jenkins.tls.certresolver=lets-encrypt
- traefik.http.services.jenkins.loadbalancer.server.port=8080 - traefik.http.services.jenkins.loadbalancer.server.port=8080

View File

@ -1,30 +1,30 @@
version: "3" version: "3"
networks: networks:
minecraft_network: [MINECRAFT_NETWORK]:
driver: bridge driver: bridge
grafana_grafana-network: [GRAFANA_NETWORK]:
external: true external: true
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
minecraft_creative: minecraft_creative:
image: itzg/minecraft-server:latest image: itzg/minecraft-server:latest
container_name: minecraft_creative container_name: minecraft_creative
restart: always restart: unless-stopped
networks: networks:
- grafana_grafana-network - [GRAFANA_NETWORK]
- minecraft_network - [MINECRAFT_NETWORK]
ports: ports:
- "[[HOST_PORT_1]]:25565" - "[SERVER_PORT_1]:25565"
- "[[METRICS_HOST_PORT_1]]:9225" - "[PROMETHEUS_PORT_1]:9225"
volumes: volumes:
- /pwspool/games/minecraft/minecraft_creative:/data - /pwspool/games/minecraft/minecraft_creative:/data
environment: environment:
- TYPE=PAPER - TYPE=PAPER
- MEMORY=2G - MEMORY=2G
- VERSION=1.19.2 - VERSION=1.20.2
- EULA=TRUE - EULA=TRUE
- SERVER_NAME=minecraft_creative - SERVER_NAME=minecraft_creative
- MODE=creative - MODE=creative
@ -37,19 +37,20 @@ services:
- PVP=false - PVP=false
- LEVEL_TYPE=FLAT - LEVEL_TYPE=FLAT
- ALLOW_FLIGHT=true - ALLOW_FLIGHT=true
labels:
- traefik.enable=false
minecraft_2023: minecraft_2023:
image: itzg/minecraft-server:latest image: itzg/minecraft-server:latest
container_name: minecraft_2023 container_name: minecraft_2023
restart: always
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
- grafana_grafana-network - [GRAFANA_NETWORK]
- minecraft_network - [MINECRAFT_NETWORK]
ports: ports:
- "[[HOST_PORT_2]]:25565" - "[SERVER_PORT_2]:25565"
- "[[METRICS_HOST_PORT_2]]:9225" - "[PROMETHEUS_PORT_2]:9225"
- "[[DYNMAP_PORT]]:8123" - "[DYNMAP_PORT_2]:8123"
volumes: volumes:
- /pwspool/games/minecraft/minecraft_2023:/data - /pwspool/games/minecraft/minecraft_2023:/data
environment: environment:
@ -67,26 +68,25 @@ services:
- MOTD="\u00A77Pinnerland, powered by \u00A75P\u00A79W\u00A75S\u00A77\!" - MOTD="\u00A77Pinnerland, powered by \u00A75P\u00A79W\u00A75S\u00A77\!"
- ALLOW_FLIGHT=false - ALLOW_FLIGHT=false
labels: labels:
- traefik.http.routers.minemap.rule=Host(`[[MINEMAP_URL]]`) - traefik.http.routers.minemap.rule=Host(`[MINEMAP_SUBDOMAIN_URL]`)
- traefik.http.routers.minemap.tls=true - traefik.http.routers.minemap.tls=true
- traefik.http.routers.minemap.tls.certresolver=lets-encrypt - traefik.http.routers.minemap.tls.certresolver=lets-encrypt
- traefik.http.services.minemap.loadbalancer.server.port=8123 - traefik.http.services.minemap.loadbalancer.server.port=8123
- traefik.port=[[HOST_PORT_2]] - traefik.port=8123
minecraft_skyblock: minecraft_skyblock:
image: itzg/minecraft-server:latest image: itzg/minecraft-server:latest
container_name: minecraft_skyblock container_name: minecraft_skyblock
restart: always
networks: networks:
- minecraft_network - minecraft_network
ports: ports:
- "[[HOST_PORT_3]]:25565" - "[SERVER_PORT_3]:25565"
volumes: volumes:
- /pwspool/games/minecraft/minecraft_skyblock:/data - /pwspool/games/minecraft/minecraft_skyblock:/data
environment: environment:
- TYPE=PAPER - TYPE=PAPER
- MEMORY=4G - MEMORY=4G
- VERSION=1.20.1 - VERSION=1.20.2
- EULA=TRUE - EULA=TRUE
- SERVER_NAME=minecraft_skyblock - SERVER_NAME=minecraft_skyblock
- MODE=survival - MODE=survival
@ -94,22 +94,27 @@ services:
- OPS=RicecakeSMS,pZ_aeriaL - OPS=RicecakeSMS,pZ_aeriaL
- ICON=https://i.imgur.com/sqjZGql.png - ICON=https://i.imgur.com/sqjZGql.png
- MOTD="\u00A77Skyblock, powered by \u00A75P\u00A79W\u00A75S\u00A77\!" - MOTD="\u00A77Skyblock, powered by \u00A75P\u00A79W\u00A75S\u00A77\!"
labels:
- traefik.enable=false
minecraft_2023_metrics: minecraft_2023_metrics:
image: joshi425/minecraft_exporter:latest image: joshi425/minecraft_exporter:latest
container_name: minecraft_2023_metrics container_name: minecraft_2023_metrics
restart: always
networks: networks:
- minecraft_network - minecraft_network
ports: ports:
- 2565:2565 - [SEVER_PORT_4]:2565
volumes: volumes:
- /pwspool/games/minecraft/minecraft_2023/world:/world - /pwspool/games/minecraft/minecraft_2023/world:/world
environment: environment:
- RCON_HOST=127.0.0.1 - RCON_HOST=127.0.0.1
- RCON_PORT=[[HOST_PORT_2]] - RCON_PORT=25565
- HTTP_PORT=2565 - HTTP_PORT=[SERVER_PORT_4]
- FORGE_SERVER="False" - FORGE_SERVER="False"
- PAPER_SERVER="True" - PAPER_SERVER="True"
- DYNMAP_ENABLED="True" - DYNMAP_ENABLED="True"
labels:
- traefik.enable=false

View File

@ -1,42 +1,44 @@
version: "3" version: "3"
networks: networks:
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
app: app:
image: monica:latest image: monica:latest
container_name: monica
restart: unless-stopped
depends_on: depends_on:
- db - db
ports: ports:
- [[HOST_PORT]]:80 - [SERVER_PORT]:80
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
environment: environment:
- APP_KEY=[[APP_KEY]] - APP_KEY=[APP_KEY]
- DB_HOST=[[DATABASE_HOST]] - DB_HOST=[DATABASE_HOST]
- DB_USERNAME=[[DATABASE_USERNAME]] - DB_USERNAME=[DATABASE_USER]
- DB_PASSWORD=[[DATABASE_PASSWORD]] - DB_PASSWORD=[DATABASE_PASS]
- APP_ENV=production - APP_ENV=production
- APP_DEBUG=false - APP_DEBUG=false
volumes: volumes:
- /pwspool/software/monica/app:/var/www/html/storage - /pwspool/software/monica/app:/var/www/html/storage
restart: always restart: always
labels: labels:
- traefik.http.routers.monica.rule=Host(`[[SITE_URL]]`) - traefik.http.routers.monica.rule=Host(`[SUBDOMAIN_URL]`)
- traefik.http.routers.monica.tls=true - traefik.http.routers.monica.tls=true
- traefik.http.routers.monica.tls.certresolver=lets-encrypt - traefik.http.routers.monica.tls.certresolver=lets-encrypt
- traefik.http.services.monica.loadbalancer.server.port=80 - traefik.http.services.monica.loadbalancer.server.port=80
- traefik.port=[[HOST_PORT]] - traefik.port=[HOST_PORT]
db: db:
image: mysql:5.7 image: mysql:5.7
environment: environment:
- MYSQL_RANDOM_ROOT_PASSWORD=true - MYSQL_RANDOM_ROOT_PASSWORD=true
- MYSQL_DATABASE=[[DATABASE_HOST]] - MYSQL_DATABASE=[DATABASE_HOST]
- MYSQL_USER=[[DATABASE_USERNAME]] - MYSQL_USER=[DATABASE_USERNAME]
- MYSQL_PASSWORD=[[DATABASE_PASSWORD]] - MYSQL_PASSWORD=[DATABASE_PASSWORD]
volumes: volumes:
- /pwspool/software/monica/db:/var/lib/mysql - /pwspool/software/monica/db:/var/lib/mysql
restart: always restart: always

View File

@ -4,26 +4,26 @@ services:
nordlynx: nordlynx:
image: ghcr.io/bubuntux/nordlynx image: ghcr.io/bubuntux/nordlynx
container_name: nordlynx container_name: nordlynx
restart: unless-stopped
cap_add: cap_add:
- NET_ADMIN - NET_ADMIN
environment: environment:
- PRIVATE_KEY=[[PRIVATE_KEY]] - PRIVATE_KEY=[PRIVATE_KEY]
- NET_LOCAL=192.168.1.0/24 - NET_LOCAL=192.168.1.0/24
- TZ=America/Los_Angeles - TZ=America/Los_Angeles
- QUERY=filters\[country_id\]=202 - QUERY=filters\[country_id\]=202
ports: ports:
- "[[HOST_URL]]:8888" - "[HOST_URL]:8888"
restart: "unless-stopped"
labels: labels:
- traefik.enable=false - traefik.enable=false
qb: qb:
image: ghcr.io/linuxserver/qbittorrent:latest image: ghcr.io/linuxserver/qbittorrent:latest
container_name: qb container_name: qb
restart: always restart: unless-stopped
network_mode: service:nordlynx network_mode: service:nordlynx
environment: environment:
- WEBUI_PORT=[[HOST_URL]] - WEBUI_PORT=[HOST_URL]
volumes: volumes:
- /data/write/qb/appdata/config:/config - /data/write/qb/appdata/config:/config
- /data/write/qb/downloads:/downloads - /data/write/qb/downloads:/downloads
@ -31,4 +31,3 @@ services:
- nordlynx - nordlynx
labels: labels:
- traefik.enable=false - traefik.enable=false

View File

@ -1,15 +1,16 @@
version: "3" version: "3"
networks: networks:
traefik_traefik-network: [TRAEFIK_NETWORK]:
external: true external: true
services: services:
photoprism-private: photoprism-private:
image: photoprism/photoprism image: photoprism/photoprism
restart: always container_name: photoprism-private
restart: unless-stopped
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
security_opt: security_opt:
- seccomp:unconfined - seccomp:unconfined
- apparmor:unconfined - apparmor:unconfined
@ -39,9 +40,10 @@ services:
photoprism-public: photoprism-public:
image: photoprism/photoprism image: photoprism/photoprism
restart: always container_name: photoprism-public
restart: unless-stopped
networks: networks:
- traefik_traefik-network - [TRAEFIK_NETWORK]
security_opt: security_opt:
- seccomp:unconfined - seccomp:unconfined
- apparmor:unconfined - apparmor:unconfined

View File

@ -5,7 +5,7 @@ services:
image: ghcr.io/linuxserver/plex:latest image: ghcr.io/linuxserver/plex:latest
container_name: plex container_name: plex
network_mode: host network_mode: host
restart: always restart: unless-stopped
environment: environment:
- PUID=[[USER_ID]] - PUID=[[USER_ID]]
- PGID=[[GROUP_ID]] - PGID=[[GROUP_ID]]

View File

@ -10,7 +10,7 @@ services:
portainer: portainer:
image: portainer/portainer-ce image: portainer/portainer-ce
container_name: portainer container_name: portainer
restart: always restart: unless-stopped
networks: networks:
- traefik_traefik-network - traefik_traefik-network
ports: ports:

1
traefik/.gitignore vendored
View File

@ -2,6 +2,7 @@ letsencrypt/
tmp/ tmp/
backups/ backups/
acme.json acme.json
docker-compose.yml
traefik.toml traefik.toml
traefik-dynamic.toml traefik-dynamic.toml

View File

@ -0,0 +1,22 @@
version: "3"
networks:
traefik-network:
services:
traefik:
image: traefik:v2.9
container_name: traefik
restart: unless-stopped
networks:
- traefik-network
ports:
- "80:80"
- "8080:8080"
- "443:443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./traefik.toml:/etc/traefik/traefik.toml
- ./traefik-dynamic.toml:/etc/traefik/dynamic/traefik-dynamic.toml
- ./acme.json:/etc/acme.json