259 lines
6.0 KiB
YAML
Executable File
259 lines
6.0 KiB
YAML
Executable File
services:
|
|
haproxy:
|
|
image: haproxy:latest
|
|
container_name: haproxy
|
|
volumes:
|
|
- ./HAPROXY:/usr/local/etc/haproxy
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.2
|
|
restart: always
|
|
|
|
mariadb:
|
|
image: mariadb:latest
|
|
container_name: mariadb
|
|
volumes:
|
|
- ./MARIADB:/var/lib/mysql
|
|
environment:
|
|
MARIADB_ROOT_PASSWORD: bBHofurUJWKzPE8Z
|
|
MARIADB_DATABASE: LIVE
|
|
MARIADB_USER: worker
|
|
MARIADB_PASSWORD: bBHofurUJWKzPE8Z
|
|
ports:
|
|
- "3306:3306"
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.10
|
|
restart: always
|
|
|
|
webserver_public:
|
|
build: .
|
|
container_name: webserver_public
|
|
depends_on:
|
|
- haproxy
|
|
- mariadb
|
|
volumes:
|
|
- ./WEBSERVER/PUBLIC/WEBROOT:/var/www/html/
|
|
- ./SESSIONS/PUBLIC/:/var/lib/php/sessions
|
|
ports:
|
|
- "8001:80"
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.11
|
|
restart: always
|
|
|
|
webserver_backend:
|
|
build: .
|
|
container_name: webserver_backend
|
|
depends_on:
|
|
- haproxy
|
|
- mariadb
|
|
volumes:
|
|
- ./WEBSERVER/BACKEND/WEBROOT:/var/www/html/
|
|
- ./TEMP/REPORTS/:/var/www/html/static/
|
|
- ./SESSIONS/BACKEND/:/var/lib/php/sessions
|
|
ports:
|
|
- "8002:80"
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.12
|
|
restart: always
|
|
|
|
gitea:
|
|
image: gitea/gitea:latest
|
|
container_name: gitea
|
|
volumes:
|
|
- ./GITEA:/data
|
|
- ./CONFIGS/GITEA/app.ini:/data/gitea/conf/app.ini
|
|
environment:
|
|
- TZ=Europe/Berlin
|
|
# - APP_INI_PATH=./GITEA/conf/app.ini
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.13
|
|
ports:
|
|
- "3000:3000"
|
|
- "2222:22"
|
|
restart: always
|
|
|
|
dnsmasq:
|
|
image: dockurr/dnsmasq
|
|
container_name: dnsmasq
|
|
restart: always
|
|
cap_add:
|
|
- NET_ADMIN
|
|
ports:
|
|
- "53:53/udp"
|
|
- "53:53/tcp"
|
|
volumes:
|
|
- ./CONFIGS/DNSMASQ/dnsmasq.conf:/etc/dnsmasq.conf:ro
|
|
- ./DNSMASQ/dnsmasq_leases:/var/lib/misc
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.14
|
|
healthcheck:
|
|
test: ["CMD", "nslookup", "server1.mrhossa.de", "127.0.0.1"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
|
|
flatnotes:
|
|
image: dullage/flatnotes:latest
|
|
container_name: flatnotes
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- FLATNOTES_AUTH_TYPE=password
|
|
- FLATNOTES_USERNAME=bruno
|
|
- FLATNOTES_PASSWORD=bBHofurUJWKzPE8Z
|
|
- FLATNOTES_SECRET_KEY=bBHofurUJWKzPE8Z:p2x338k48021104
|
|
volumes:
|
|
- ./FLATNOTES/:/data
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.15
|
|
ports:
|
|
- "8003:8080"
|
|
restart: always
|
|
|
|
vaultwarden:
|
|
image: vaultwarden/server:latest
|
|
container_name: vaultwarden
|
|
environment:
|
|
- WEBSOCKET_ENABLED=true
|
|
- SIGNUPS_ALLOWED=true
|
|
volumes:
|
|
- ./VAULTWARDEN:/data
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.16
|
|
ports:
|
|
- "8004:80"
|
|
restart: always
|
|
|
|
portainer:
|
|
image: portainer/portainer-ce:latest
|
|
container_name: portainer
|
|
volumes:
|
|
- ./PORTAINER:/data
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.17
|
|
ports:
|
|
- "8005:9000"
|
|
restart: always
|
|
|
|
homarr:
|
|
image: ghcr.io/homarr-labs/homarr:latest
|
|
container_name: homarr
|
|
environment:
|
|
- TZ=Europe/Berlin
|
|
- SECRET_ENCRYPTION_KEY=c6dea74b93da91f078037ca573d7cb35db8fedc10fa7839469db02e39a9577b8
|
|
volumes:
|
|
- ./HOMARR/configs:/app/data/configs
|
|
- ./HOMARR/icons:/app/public/icons
|
|
- ./HOMARR/data:/data
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.18
|
|
ports:
|
|
- "8006:7575"
|
|
restart: always
|
|
|
|
jenkins:
|
|
image: jenkins/jenkins:latest
|
|
container_name: jenkins
|
|
volumes:
|
|
- ./JENKINS:/var/jenkins_home
|
|
environment:
|
|
- JAVA_OPTS=-Djenkins.install.runSetupWizard=false
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.19
|
|
ports:
|
|
- "8080:8080"
|
|
- "50000:50000"
|
|
restart: always
|
|
|
|
prometheus:
|
|
image: prom/prometheus:latest
|
|
container_name: prometheus
|
|
volumes:
|
|
- ./CONFIGS/PROMETHEUS/:/etc/prometheus
|
|
- ./PROMETHEUS/:/prometheus
|
|
command:
|
|
- '--config.file=/etc/prometheus/prometheus.yml'
|
|
- '--storage.tsdb.path=/prometheus'
|
|
- '--storage.tsdb.retention.time=30d'
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.20
|
|
ports:
|
|
- "127.0.0.1:9090:9090"
|
|
restart: always
|
|
|
|
node-exporter:
|
|
image: prom/node-exporter:latest
|
|
container_name: node_exporter
|
|
volumes:
|
|
- /proc:/host/proc:ro
|
|
- /sys:/host/sys:ro
|
|
- /:/rootfs:ro
|
|
command:
|
|
- '--path.procfs=/host/proc'
|
|
- '--path.sysfs=/host/sys'
|
|
- '--path.rootfs=/rootfs'
|
|
- '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.21
|
|
ports:
|
|
- "8008:9100"
|
|
restart: always
|
|
|
|
cadvisor:
|
|
image: gcr.io/cadvisor/cadvisor:latest
|
|
container_name: cadvisor
|
|
volumes:
|
|
- /:/rootfs:ro
|
|
- /var/run:/var/run:ro
|
|
- /sys:/sys:ro
|
|
- /var/lib/docker/:/var/lib/docker:ro
|
|
- /dev/disk/:/dev/disk:ro
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.22
|
|
ports:
|
|
- "8009:8080"
|
|
restart: always
|
|
# Falls auf dem Host cgroup v2 läuft und Metriken fehlen/leer sind,
|
|
# zusätzlich privileged: true setzen und /dev/kmsg:/dev/kmsg mounten.
|
|
|
|
grafana:
|
|
image: grafana/grafana:latest
|
|
container_name: grafana
|
|
environment:
|
|
- GF_SECURITY_ADMIN_USER=bruno
|
|
- GF_SECURITY_ADMIN_PASSWORD=svHBaMujp0c7ZE5065
|
|
- GF_USERS_ALLOW_SIGN_UP=false
|
|
volumes:
|
|
- ./GRAFANA/data:/var/lib/grafana
|
|
ports:
|
|
- "8007:3000"
|
|
networks:
|
|
docker-net:
|
|
ipv4_address: 172.30.0.23
|
|
restart: always
|
|
|
|
networks:
|
|
docker-net:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.30.0.0/16
|