Files
docker_system/docker-compose.yaml
eriks d2f5bb5fa6 cleanup (#1)
Reviewed-on: #1
2022-07-08 22:20:00 +03:00

126 lines
2.7 KiB
YAML

version: '3.9'
services:
nginx:
build:
context: ./compose/nginx
dockerfile: Dockerfile
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- ./compose/nginx/conf:/etc/nginx:ro
# All mount points are read only (:ro) - file uploads/edits are processed inside service containers
- nextcloud:/var/www/app/nextcloud:ro
- ${nextcloud_data}:/var/www/app/nextcloud/data:ro
- certbot_certs:/etc/letsencrypt:ro
depends_on:
- default_web_app
- nextcloud
- yopass
- certbot
- gitea
- vardadienas
default_web_app:
build:
context: ./projects/default
dockerfile: Dockerfile
restart: unless-stopped
security_opt:
- no-new-privileges
redis:
image: redis:alpine
restart: always
nextcloud:
build:
context: ./compose/nextcloud
dockerfile: Dockerfile
env_file: .env_nextcloud
volumes:
- nextcloud:/var/www/html
# Using path from variable "nextcloud_data" to place data at different disk,
# which isn't easily accomplished from compose
- ${nextcloud_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
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
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:2222"
environment:
- USER_UID=1000
- USER_GID=1000
env_file:
- .env_gitea
qbit:
image: lscr.io/linuxserver/qbittorrent
environment:
- PUID=1000
- PGID=1001
- TZ=UTC
volumes:
- /config # persistent unnamed storage
- ${torrent_path}:/downloads
ports:
- "30000:30000"
- "30000:30000/udp"
restart: unless-stopped
volumes:
# named persistent volumes
nextcloud: {} # nextcloud configuration
pgdb: {}
certbot_certs: {}
registry: {}
gitea-data: {}
gitea-config: {}
qbit_config: {}