mirror of
https://github.com/bensuperpc/infrastructure.git
synced 2024-12-22 00:34:26 +01:00
Split docker-compose
Signed-off-by: Bensuperpc <bensuperpc@gmail.com>
This commit is contained in:
parent
077aaf806c
commit
b099097526
32
docker-compose.caddy.yml
Normal file
32
docker-compose.caddy.yml
Normal file
@ -0,0 +1,32 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# Webserver
|
||||
caddy:
|
||||
image: caddy:latest
|
||||
container_name: webserver
|
||||
profiles:
|
||||
- webserver
|
||||
restart: on-failure
|
||||
ports:
|
||||
- 80:80
|
||||
- 443:443
|
||||
volumes:
|
||||
- wordpress:/var/www/html:rw
|
||||
- caddy_data:/data:rw
|
||||
- caddy_config:/config:rw
|
||||
- ./caddy:/etc/caddy:ro
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
# cap_drop:
|
||||
# - ALL
|
||||
# cap_add:
|
||||
# - CHOWN
|
||||
# - FOWNER
|
||||
# - DAC_OVERRIDE
|
||||
# - SETGID
|
||||
# - SETUID
|
||||
# - NET_BIND_SERVICE
|
||||
|
43
docker-compose.gitea.yml
Normal file
43
docker-compose.gitea.yml
Normal file
@ -0,0 +1,43 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# Gitea
|
||||
gitea:
|
||||
image: gitea/gitea:latest-rootless
|
||||
container_name: gitea
|
||||
profiles:
|
||||
- gitea
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
env_file:
|
||||
- env/gitea.env
|
||||
volumes:
|
||||
- gitea_data:/var/lib/gitea
|
||||
- gitea_config:/etc/gitea
|
||||
# - /etc/timezone:/etc/timezone:ro
|
||||
# - /etc/localtime:/etc/localtime:ro
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Database gitea
|
||||
database_gitea:
|
||||
image: mariadb:latest
|
||||
container_name: database_gitea
|
||||
profiles:
|
||||
- database
|
||||
- gitea
|
||||
depends_on:
|
||||
- gitea
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- gitea_db:/var/lib/mysql:rw
|
||||
env_file:
|
||||
- env/gitea_db.env
|
||||
command: '--default-authentication-plugin=mysql_native_password'
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
20
docker-compose.jellyfin.yml
Normal file
20
docker-compose.jellyfin.yml
Normal file
@ -0,0 +1,20 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# Jellyfin
|
||||
jellyfin:
|
||||
image: jellyfin/jellyfin:latest
|
||||
container_name: jellyfin
|
||||
profiles:
|
||||
- jellyfin
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
volumes:
|
||||
- jellyfin_config:/config
|
||||
- jellyfin_data:/movies:ro
|
||||
- jellyfin_cache:/cache
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
6
docker-compose.networks.yml
Normal file
6
docker-compose.networks.yml
Normal file
@ -0,0 +1,6 @@
|
||||
version: '3.9'
|
||||
|
||||
networks:
|
||||
infra-network:
|
||||
driver: bridge
|
||||
name: infra-network
|
21
docker-compose.qbittorrent.yml
Normal file
21
docker-compose.qbittorrent.yml
Normal file
@ -0,0 +1,21 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# qBittorrent
|
||||
qbittorrent:
|
||||
image: lscr.io/linuxserver/qbittorrent:latest
|
||||
container_name: qbittorrent
|
||||
profiles:
|
||||
- qbittorrent
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
env_file:
|
||||
- env/qbittorrent.env
|
||||
volumes:
|
||||
- qbittorrent_config:/config
|
||||
- qbittorrent_data:/downloads
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
16
docker-compose.uptime-kuma.yml
Normal file
16
docker-compose.uptime-kuma.yml
Normal file
@ -0,0 +1,16 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# Uptime Kuma
|
||||
uptime-kuma:
|
||||
image: louislam/uptime-kuma:latest
|
||||
container_name: uptime-kuma
|
||||
profiles:
|
||||
- uptime-kuma
|
||||
volumes:
|
||||
- uptimekuma_data:/app/data
|
||||
restart: on-failure
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
29
docker-compose.volumes.yml
Normal file
29
docker-compose.volumes.yml
Normal file
@ -0,0 +1,29 @@
|
||||
version: '3.9'
|
||||
|
||||
volumes:
|
||||
database:
|
||||
name: database
|
||||
wordpress:
|
||||
name: wordpress
|
||||
caddy_data:
|
||||
name: caddy_data
|
||||
caddy_config:
|
||||
name: caddy_config
|
||||
qbittorrent_config:
|
||||
name: qbittorrent_config
|
||||
qbittorrent_data:
|
||||
name: qbittorrent_data
|
||||
uptimekuma_data:
|
||||
name: uptimekuma_data
|
||||
gitea_data:
|
||||
name: gitea_data
|
||||
gitea_config:
|
||||
name: gitea_config
|
||||
gitea_db:
|
||||
name: gitea_db
|
||||
jellyfin_config:
|
||||
name: jellyfin_config
|
||||
jellyfin_data:
|
||||
name: jellyfin_data
|
||||
jellyfin_cache:
|
||||
name: jellyfin_cache
|
59
docker-compose.wordpress.yml
Normal file
59
docker-compose.wordpress.yml
Normal file
@ -0,0 +1,59 @@
|
||||
version: '3.9'
|
||||
|
||||
services:
|
||||
# Database wordpress
|
||||
database:
|
||||
image: mariadb:latest
|
||||
container_name: database
|
||||
profiles:
|
||||
- database
|
||||
- wordpress
|
||||
depends_on:
|
||||
- caddy
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- database:/var/lib/mysql:rw
|
||||
env_file:
|
||||
- env/wordpress_db.env
|
||||
command: '--default-authentication-plugin=mysql_native_password'
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Wordpress
|
||||
wordpress:
|
||||
image: wordpress:fpm
|
||||
container_name: wordpress
|
||||
profiles:
|
||||
- wordpress
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- database
|
||||
- caddy
|
||||
env_file:
|
||||
- env/wordpress.env
|
||||
volumes:
|
||||
- ./config/wordpress/php.ini:/usr/local/etc/php/conf.d/custom.ini:ro
|
||||
- wordpress:/var/www/html:rw
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Adminer
|
||||
adminer:
|
||||
image: adminer:latest
|
||||
container_name: adminer
|
||||
profiles:
|
||||
- adminer
|
||||
restart: on-failure
|
||||
env_file:
|
||||
- env/adminer.env
|
||||
depends_on:
|
||||
- database
|
||||
- caddy
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
@ -1,212 +0,0 @@
|
||||
version: '3.9'
|
||||
services:
|
||||
# Webserver
|
||||
caddy:
|
||||
image: caddy:latest
|
||||
container_name: webserver
|
||||
profiles:
|
||||
- webserver
|
||||
restart: on-failure
|
||||
ports:
|
||||
- 80:80
|
||||
- 443:443
|
||||
volumes:
|
||||
- wordpress:/var/www/html:rw
|
||||
- caddy_data:/data:rw
|
||||
- caddy_config:/config:rw
|
||||
- ./caddy:/etc/caddy:ro
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
# cap_drop:
|
||||
# - ALL
|
||||
# cap_add:
|
||||
# - CHOWN
|
||||
# - FOWNER
|
||||
# - DAC_OVERRIDE
|
||||
# - SETGID
|
||||
# - SETUID
|
||||
# - NET_BIND_SERVICE
|
||||
|
||||
# Database wordpress
|
||||
database:
|
||||
image: mariadb:latest
|
||||
container_name: database
|
||||
profiles:
|
||||
- database
|
||||
- wordpress
|
||||
depends_on:
|
||||
- caddy
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- database:/var/lib/mysql:rw
|
||||
env_file:
|
||||
- env/wordpress_db.env
|
||||
command: '--default-authentication-plugin=mysql_native_password'
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Wordpress
|
||||
wordpress:
|
||||
image: wordpress:fpm
|
||||
container_name: wordpress
|
||||
profiles:
|
||||
- wordpress
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- database
|
||||
- caddy
|
||||
env_file:
|
||||
- env/wordpress.env
|
||||
volumes:
|
||||
- ./config/wordpress/php.ini:/usr/local/etc/php/conf.d/custom.ini:ro
|
||||
- wordpress:/var/www/html:rw
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Adminer
|
||||
adminer:
|
||||
image: adminer:latest
|
||||
container_name: adminer
|
||||
profiles:
|
||||
- adminer
|
||||
restart: on-failure
|
||||
env_file:
|
||||
- env/adminer.env
|
||||
depends_on:
|
||||
- database
|
||||
- caddy
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Gitea
|
||||
gitea:
|
||||
image: gitea/gitea:latest-rootless
|
||||
container_name: gitea
|
||||
profiles:
|
||||
- gitea
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
env_file:
|
||||
- env/gitea.env
|
||||
volumes:
|
||||
- gitea_data:/var/lib/gitea
|
||||
- gitea_config:/etc/gitea
|
||||
# - /etc/timezone:/etc/timezone:ro
|
||||
# - /etc/localtime:/etc/localtime:ro
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Database gitea
|
||||
database_gitea:
|
||||
image: mariadb:latest
|
||||
container_name: database_gitea
|
||||
profiles:
|
||||
- database
|
||||
- gitea
|
||||
depends_on:
|
||||
- gitea
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- gitea_db:/var/lib/mysql:rw
|
||||
env_file:
|
||||
- env/gitea_db.env
|
||||
command: '--default-authentication-plugin=mysql_native_password'
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Jellyfin
|
||||
jellyfin:
|
||||
image: jellyfin/jellyfin:latest
|
||||
container_name: jellyfin
|
||||
profiles:
|
||||
- jellyfin
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
volumes:
|
||||
- jellyfin_config:/config
|
||||
- jellyfin_data:/movies:ro
|
||||
- jellyfin_cache:/cache
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# qBittorrent
|
||||
qbittorrent:
|
||||
image: lscr.io/linuxserver/qbittorrent:latest
|
||||
container_name: qbittorrent
|
||||
profiles:
|
||||
- qbittorrent
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
- caddy
|
||||
env_file:
|
||||
- env/qbittorrent.env
|
||||
volumes:
|
||||
- qbittorrent_config:/config
|
||||
- qbittorrent_data:/downloads
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
# Uptime Kuma
|
||||
uptime-kuma:
|
||||
image: louislam/uptime-kuma:latest
|
||||
container_name: uptime-kuma
|
||||
profiles:
|
||||
- uptime-kuma
|
||||
volumes:
|
||||
- uptimekuma_data:/app/data
|
||||
restart: on-failure
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
|
||||
volumes:
|
||||
database:
|
||||
name: database
|
||||
wordpress:
|
||||
name: wordpress
|
||||
caddy_data:
|
||||
name: caddy_data
|
||||
caddy_config:
|
||||
name: caddy_config
|
||||
qbittorrent_config:
|
||||
name: qbittorrent_config
|
||||
qbittorrent_data:
|
||||
name: qbittorrent_data
|
||||
uptimekuma_data:
|
||||
name: uptimekuma_data
|
||||
gitea_data:
|
||||
name: gitea_data
|
||||
gitea_config:
|
||||
name: gitea_config
|
||||
gitea_db:
|
||||
name: gitea_db
|
||||
jellyfin_config:
|
||||
name: jellyfin_config
|
||||
jellyfin_data:
|
||||
name: jellyfin_data
|
||||
jellyfin_cache:
|
||||
name: jellyfin_cache
|
||||
|
||||
networks:
|
||||
infra-network:
|
||||
driver: bridge
|
||||
name: infra-network
|
Loading…
Reference in New Issue
Block a user