Files
docker_system/docker-compose.yaml
2022-07-07 12:32:13 +03:00

187 lines
4.1 KiB
YAML

version: '3.9'
services:
nginx:
build:
context: ./compose/nginx
dockerfile: Dockerfile
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- ./compose/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro
- ./compose/nginx/conf/sites-enabled:/etc/nginx/conf.d:ro
- ./compose/nginx/conf/proxy_params:/etc/nginx/proxy_params:ro
- ./compose/nginx/conf/ssl-dhparams.pem:/etc/nginx/ssl-dhparams.pem:ro
- ./compose/nginx/conf/registry.htpasswd:/etc/nginx/registry.htpasswd:ro
- fuelkeeper_static:/var/www/app/fuelkeeper/staticfiles:ro
- fuelkeeper_media:/var/www/app/fuelkeeper/media:ro
- books_static:/var/www/app/books/static:ro
- books_media:/var/www/app/books/media:ro
- ${datne_static}:/var/www/app/datne/staticfiles:ro
- ${datne_media}:/var/www/app/datne/media:ro
- nextcloud:/var/www/app/cloud:ro
- ${cloud_data}:/var/www/app/cloud/data:ro
- certbot_certs:/etc/letsencrypt:ro
- ./projects/72_lv:/var/www/72_lv:ro
depends_on:
- default_web_app
- fuelkeeper
- books
- datne
- cloud
- yopass
- certbot
- registry
- vardadienas
qbit:
image: lscr.io/linuxserver/qbittorrent
environment:
- PUID=1000
- PGID=1001
- TZ=UTC
volumes:
- qbit_config:/config
- ${datne_target}:/downloads
ports:
- "30000:30000"
- "30000:30000/udp"
restart: unless-stopped
fuelkeeper:
image: registry.72.lv/fuelkeeper:latest
volumes:
- fuelkeeper_static:/app/staticfiles
- fuelkeeper_media:/app/fuelkeeper/media
env_file: ./projects/fuelkeeper/.env
restart: unless-stopped
security_opt:
- no-new-privileges
depends_on:
- redis
- pgdb
books:
image: registry.72.lv/bookkeeping:latest
volumes:
- books_static:/app/static
- books_media:/app/media
- ./projects/bookkeeping:/app
env_file: ./projects/bookkeeping/.env
restart: unless-stopped
security_opt:
- no-new-privileges
depends_on:
- pgdb
datne:
image: registry.72.lv/datne:latest
volumes:
- ${datne_media}:/media
- ${datne_static}:/app/static
restart: unless-stopped
security_opt:
- no-new-privileges
default_web_app:
build:
context: ./projects/default
dockerfile: Dockerfile
restart: unless-stopped
security_opt:
- no-new-privileges
redis:
image: redis:alpine
restart: always
cloud:
build:
context: ./compose/cloud
dockerfile: Dockerfile
env_file: .env_cloud
volumes:
- nextcloud:/var/www/html
- ${cloud_data}:/var/www/html/data
restart: always
links:
- pgdb
- redis
pgdb:
image: postgres:13-alpine
restart: always
volumes:
- ./compose/pgdb/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d:ro
- pgdb:/var/lib/postgresql/data
env_file:
- .env_db
yopass:
image: jhaals/yopass
restart: always
command: "--redis=redis://redis:6379/1 --database=redis"
depends_on:
- redis
vardadienas:
image: registry.72.lv/flask-namedays:latest
restart: always
security_opt:
- no-new-privileges
certbot:
image: certbot/dns-digitalocean:latest
entrypoint: /cb_init.sh
restart: unless-stopped
volumes:
- ./compose/certbot/init.sh:/cb_init.sh
- certbot_certs:/etc/letsencrypt
- /var/log/letsencrypt
env_file:
- .env_certbot
registry:
image: registry:2
restart: unless-stopped
volumes:
- registry:/var/lib/registry
gitea:
image: gitea/gitea:latest-rootless
restart: always
volumes:
- gitea-data:/var/lib/gitea
- gitea-config:/etc/gitea
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "22:22"
environment:
- USER_UID=1000
- USER_GID=1000
env_file:
- .env_gitea
volumes:
books_media: {}
books_static: {}
fuelkeeper_media: {}
fuelkeeper_static: {}
nextcloud: {}
pgdb: {}
certbot_certs: {}
registry: {}
gitea-data: {}
gitea-config: {}
qbit_config: {}