split compose file
This commit is contained in:
@@ -1,238 +1,20 @@
|
||||
services:
|
||||
#
|
||||
# official
|
||||
#
|
||||
nginx:
|
||||
image: nginx:1.25.4 # official, linuxserver/nginx
|
||||
container_name: nginx
|
||||
# ports:
|
||||
# - 444:443
|
||||
extra_hosts:
|
||||
- "host:192.168.2.150"
|
||||
volumes:
|
||||
- /opt/nginx/etc/.htpasswd:/host/etc/.htpasswd
|
||||
- /opt/nginx/etc/nginx/conf:/etc/nginx/conf
|
||||
- /opt/nginx/etc/nginx/conf.d:/etc/nginx/conf.d
|
||||
- /opt/nginx/var/log/nginx:/var/log/nginx
|
||||
- /opt/seafile/seafile-server-latest/seahub/media:/host/var/www/seafile
|
||||
restart: unless-stopped
|
||||
filebrowser:
|
||||
image: filebrowser/filebrowser:v2.21.1 # official, no linuxserver image
|
||||
container_name: filebrowser
|
||||
volumes:
|
||||
- /opt/filebrowser/.filebrowser.json:/.filebrowser.json
|
||||
- /opt/filebrowser/database.db:/database.db
|
||||
- /media:/host/media
|
||||
ports:
|
||||
- 8001:80
|
||||
restart: unless-stopped
|
||||
#
|
||||
# custom
|
||||
#
|
||||
caddy:
|
||||
image: caddy
|
||||
container_name: caddy
|
||||
build:
|
||||
context: /opt/caddy/
|
||||
ports:
|
||||
- 444:443
|
||||
volumes:
|
||||
- /opt/caddy/Caddyfile:/etc/caddy/Caddyfile
|
||||
- /opt/caddy/data:/data
|
||||
environment:
|
||||
#- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:?}
|
||||
#- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:?}
|
||||
- AWS_ACCESS_KEY_ID="AKIAY4DUYEBSTECHF6RN"
|
||||
- AWS_SECRET_ACCESS_KEY="tdx5eWda19/E7T3cttxDyLR2DabArOh2jHzTFV+d"
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- nginx
|
||||
links:
|
||||
- nginx
|
||||
openvpn-server: # custom, no linuxserver image
|
||||
image: kylemanna/openvpn:2.4
|
||||
container_name: openvpn-server
|
||||
privileged: true
|
||||
extra_hosts:
|
||||
- "host:192.168.2.150"
|
||||
ports:
|
||||
- 443:443
|
||||
cap_add:
|
||||
- NET_ADMIN
|
||||
volumes:
|
||||
- /opt/openvpn-server:/etc/openvpn
|
||||
network_mode: bridge
|
||||
restart: unless-stopped
|
||||
borgmatic:
|
||||
image: b3vis/borgmatic:v1.1.10-1.4.21 # custom, no linuxserver image
|
||||
container_name: borgmatic
|
||||
volumes:
|
||||
- /:/sepia:ro
|
||||
- /media:/media
|
||||
- /root/.ssh:/root/.ssh:ro
|
||||
- /opt/borgmatic/config/crontab.txt:/etc/borgmatic.d/crontab.txt
|
||||
- /opt/borgmatic/config:/config
|
||||
- /opt/borgmatic/keys:/keys
|
||||
- /opt/borgmatic/cache:/cache
|
||||
- /opt/borgmatic/log:/log
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=Europe/Amsterdam
|
||||
seafile:
|
||||
image: gronis/seafile:9.0.4
|
||||
container_name: seafile
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /opt/seafile:/seafile:rw
|
||||
- /media/seafile:/seafile/seafile-data:rw
|
||||
ports:
|
||||
- 8000:8000
|
||||
- 8082:8082
|
||||
environment:
|
||||
- MODE=autorun
|
||||
wordpress:
|
||||
image: wordpress:mod # custom, ook wordpress:php8.1-apache-pgsql (official + pgsql extension) in /opt/wordpress/docker/build.sh, maar werkt niet met postgres 12!
|
||||
container_name: wordpress
|
||||
volumes:
|
||||
- /opt/wordpress:/var/www/html
|
||||
ports:
|
||||
- 8888:80
|
||||
environment:
|
||||
- WORDPRESS_DB_HOST=pgsql
|
||||
- WORDPRESS_DB_USER=wordpress
|
||||
- WORDPRESS_DB_PASSWORD=wordpress
|
||||
- WORDPRESS_DB_NAME=wordpress
|
||||
links:
|
||||
- pgsql
|
||||
#- mysql # Lukt niet om te migreren van pgsql naar mysql
|
||||
restart: unless-stopped
|
||||
mysql:
|
||||
image: mysql:5.7 # official
|
||||
container_name: mysql
|
||||
volumes:
|
||||
- /opt/mysql:/var/lib/mysql
|
||||
environment:
|
||||
MYSQL_DATABASE: example
|
||||
MYSQL_USER: example
|
||||
MYSQL_PASSWORD: example
|
||||
MYSQL_ROOT_PASSWORD: example
|
||||
restart: unless-stopped
|
||||
adminer:
|
||||
image: adminer:latest # official
|
||||
container_name: adminer
|
||||
restart: always
|
||||
links:
|
||||
- pgsql
|
||||
- mysql
|
||||
ports:
|
||||
- 7070:8080
|
||||
pgsql:
|
||||
image: postgres:latest # official, no linuxserver image
|
||||
container_name: pgsql
|
||||
volumes:
|
||||
- /opt/pgsql:/var/lib/postgresql/data
|
||||
ports:
|
||||
- 5432:5432
|
||||
environment:
|
||||
- POSTGRES_PASSWORD=example
|
||||
restart: unless-stopped
|
||||
pgsql-admin:
|
||||
image: dpage/pgadmin4:latest # custom, no linuxserver image
|
||||
container_name: pgsql-admin
|
||||
volumes:
|
||||
- /opt/pgsql-admin=/var/lib/pgadmin
|
||||
ports:
|
||||
- 5050:80
|
||||
environment:
|
||||
- PGADMIN_DEFAULT_EMAIL=admin
|
||||
- PGADMIN_DEFAULT_PASSWORD=toUEhcycUC5Kpj27
|
||||
restart: unless-stopped
|
||||
apt-cacher:
|
||||
image: sameersbn/apt-cacher-ng:3.1-3
|
||||
container_name: apt-cacher
|
||||
ports:
|
||||
- "3142:3142"
|
||||
volumes:
|
||||
- /media/scratch/apt-cacher:/var/cache/apt-cacher-ng
|
||||
restart: unless-stopped
|
||||
dns-ad-blocker:
|
||||
image: oznu/dns-ad-blocker:latest # custom, no linuxserver image, no version
|
||||
container_name: dns-ad-blocker
|
||||
ports:
|
||||
- "192.168.2.151:53:53/udp"
|
||||
environment:
|
||||
- AUTO_UPDATE=1
|
||||
- BRANCH=master
|
||||
- DNSCRYPT=1
|
||||
- DNSCRYPT_PROVIDER_NAME=2.dnscrypt-cert.ns0.dnscrypt.nl
|
||||
- DNSCRYPT_RESOLVER_ADDR=45.76.35.212
|
||||
- DNSCRYPT_PROVIDER_KEY=4C84:FB8C:0511:5DFA:5F97:C5ED:0329:1370:C78A:BCD6:4E15:DD53:AB08:DE72:FB84:4ACA
|
||||
#
|
||||
# homemade
|
||||
#
|
||||
lighttpd:
|
||||
image: webserver:latest # homemade, no linuxserver image
|
||||
container_name: lighttpd
|
||||
ports:
|
||||
- 80:81
|
||||
volumes:
|
||||
- /opt/lighttpd/etc:/host/etc
|
||||
- /home/user/certs:/host/etc/certs
|
||||
- /opt/lighttpd/var/log:/host/var/log
|
||||
- /home/user/www:/host/var/www/global
|
||||
restart: unless-stopped
|
||||
collectd:
|
||||
image: collectd:latest # homemade, no linuxserver image
|
||||
container_name: collectd
|
||||
privileged: true
|
||||
volumes:
|
||||
- /opt/collectd/etc:/etc/collectd
|
||||
- /opt/collectd/var:/var/lib/collectd
|
||||
- /opt/collectd/usr:/host/usr
|
||||
- /root/scripts/speedtest-cli:/sbin/speedtest-cli
|
||||
- /:/host/root
|
||||
- /media:/host/media
|
||||
- /var/lib/docker:/media/docker
|
||||
- /dev/mapper:/dev/mapper
|
||||
restart: unless-stopped
|
||||
|
||||
# Homeassistant et al.
|
||||
esphome:
|
||||
image: esphome/esphome:2022.12.8
|
||||
container_name: esphome
|
||||
volumes:
|
||||
- /opt/esphome:/config:rw
|
||||
- /opt/esphome/log:/log:rw
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
#devices:
|
||||
#- /dev/ttyACM0:/dev/ttyACM0
|
||||
network_mode: host
|
||||
restart: unless-stopped
|
||||
homeassistant:
|
||||
container_name: homeassistant
|
||||
image: homeassistant/home-assistant:2024.10
|
||||
volumes:
|
||||
- /opt/homeassistant:/config
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
restart: unless-stopped
|
||||
privileged: true
|
||||
network_mode: host
|
||||
timescaledb:
|
||||
image: timescale/timescaledb:2.7.1-pg14 # official
|
||||
container_name: timescaledb
|
||||
volumes:
|
||||
- /opt/timescaledb:/var/lib/postgresql/data
|
||||
ports:
|
||||
- 6543:5432
|
||||
environment:
|
||||
- POSTGRES_USER=timescaleuser
|
||||
- POSTGRES_PASSWORD=timescalepwd
|
||||
restart: unless-stopped
|
||||
grafana: # admin:grafana
|
||||
image: grafana/grafana:9.0.2 # official
|
||||
container_name: grafana
|
||||
volumes:
|
||||
- /opt/grafana:/var/lib/grafana
|
||||
ports:
|
||||
- 3333:3000
|
||||
restart: unless-stopped
|
||||
include:
|
||||
- docker-compose.nginx.yml
|
||||
- docker-compose.filebrowser.yml
|
||||
- docker-compose.caddy.yml
|
||||
- docker-compose.openvpn-server.yml
|
||||
- docker-compose.borgmatic.yml
|
||||
- docker-compose.seafile.yml
|
||||
- docker-compose.wordpress.yml
|
||||
- docker-compose.mysql.yml
|
||||
- docker-compose.adminer.yml
|
||||
- docker-compose.pgsql.yml
|
||||
- docker-compose.pgsql-admin.yml
|
||||
- docker-compose.apt-cacher.yml
|
||||
- docker-compose.dns-ad-blocker.yml
|
||||
- docker-compose.lighttpd.yml
|
||||
- docker-compose.collectd.yml
|
||||
- docker-compose.esphome.yml
|
||||
- docker-compose.homeassistant.yml
|
||||
- docker-compose.timescaledb.yml
|
||||
- docker-compose.grafana.yml
|
||||
|
||||
Reference in New Issue
Block a user