1
0
Fork 0
containers/master-compose.yml

274 lines
8.2 KiB
YAML

version: 3.7
services:
reverse-proxy:
image: caddy:alpine
container_name: caddy-vishwambhar
command: caddy run --config /etc/caddy/Caddyfile
restart: always
ports:
- "8080:80"
- "8443:443"
volumes:
- /trayimurti/containers/volumes/caddy/Caddyfile:/etc/caddy/Caddyfile:Z
- /trayimurti/containers/volumes/caddy/site:/srv:Z
- /trayimurti/containers/volumes/caddy/caddy_data:/data:Z
- /trayimurti/containers/volumes/caddy/caddy_config:/config:Z
- /trayimurti/containers/volumes/caddy/ssl:/etc/ssl:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=proxy
environment:
- TZ=Asia/Kolkata
# depends_on:
# - gitea-web
# - thefossguy-blog
# - nextcloud-web
# - thefossguy-mach
networks:
- network-caddy
gitea-web:
image: gitea/gitea:latest
container_name: gitea-govinda
restart: always
ports:
- "8010:3000"
- "8011:22"
volumes:
- /trayimurti/containers/volumes/gitea/web:/data:Z
- /trayimurti/containers/volumes/gitea/ssh:/data/git/.ssh:Z
# - /trayimurti/containers/volumes/gitea/web/data:/var/lib/gitea:Z
# - /trayimurti/containers/volumes/gitea/web/config:/etc/gitea:Z
- /etc/localtime:/etc/localtime:ro
labels:
- io.containers.autoupdate=registry
- pratham.container.category=gitea
environment:
- DEFAULT_BRANCH=master
- RUN_MODE=prod
- DISABLE_SSH=false
- START_SSH_SERVER=true
- SSH_PORT=22
- SSH_LISTEN_PORT=22
- ROOT_URL=https://git.thefossguy.com
- DOMAIN=git.thefossguy.com
- SSH_DOMAIN=git.thefossguy.com
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=gitea-db:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=/run/secrets/gitea_database_user_password
- GITEA__service__DISABLE_REGISTRATION=true
- TZ=Asia/Kolkata
depends_on:
- gitea-db
secrets:
- gitea_database_user_password
networks:
- network-gitea
gitea-db:
image: postgres:alpine
container_name: gitea-chitragupta
restart: always
volumes:
- /trayimurti/containers/volumes/gitea/database:/var/lib/postgresql/data:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=gitea
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=/run/secrets/gitea_database_user_password
- POSTGRES_DB=gitea
- TZ=Asia/Kolkata
secrets:
- gitea_database_user_password
networks:
- network-gitea
thefossguy-blog:
image: klakegg/hugo:alpine
container_name: hugo-vaikunthnatham
command: server --disableFastRender -b https://blog.thefossguy.com/ --appendPort=false
restart: always
ports:
- "8020:1313"
volumes:
- /trayimurti/containers/volumes/blog:/src:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=blog
environment:
- TZ=Asia/Kolkata
networks:
- network-blog
nextcloud-web:
image: nextcloud:production
container_name: nextcloud-govinda
restart: always
ports:
- "8030:80"
volumes:
- /trayimurti/containers/volumes/nextcloud/web:/var/www/html:z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=cloud
environment:
- POSTGRES_PASSWORD=/run/secrets/nextcloud_database_user_password
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_HOST=nextcloud-db
- NEXTCLOUD_TRUSTED_DOMAINS=cloud.thefossguy.com
- OVERWRITECLIURL=https://cloud.thefossguy.com
- OVERWRITEPROTOCOL=https
- TZ=Asia/Kolkata
depends_on:
- nextcloud-db
secrets:
- nextcloud_database_user_password
networks:
- network-nextcloud
nextcloud-db:
image: postgres:alpine
container_name: nextcloud-chitragupta
restart: always
volumes:
- /trayimurti/containers/volumes/nextcloud/database:/var/lib/postgresql/data:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=cloud
environment:
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_PASSWORD=/run/secrets/nextcloud_database_user_password
- TZ=Asia/Kolkata
secrets:
- nextcloud_database_user_password
networks:
- network-nextcloud
nextcloud-cron:
image: nextcloud:production
container_name: nextcloud-karma
entrypoint: /cron.sh
restart: always
volumes:
- /trayimurti/containers/volumes/nextcloud/web:/var/www/html:z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=cloud
environment:
- TZ=Asia/Kolkata
depends_on:
- nextcloud-web
- nextcloud-db
networks:
- network-nextcloud
thefossguy-mach:
image: klakegg/hugo:alpine
container_name: hugo-mahayogi
command: server --disableFastRender -b https://mach.thefossguy.com/ --appendPort=false
restart: always
ports:
- "8040:1313"
volumes:
- /trayimurti/containers/volumes/mach:/src:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=mach
environment:
- TZ=Asia/Kolkata
networks:
- network-mach
wireguard-client:
image: lscr.io/linuxserver/wireguard:latest
container_name: wireguard-rahu
restart: always
ports:
- "8050:51820/udp"
volumes:
- /trayimurti/containers/volumes/wireguard:/config:Z
- /lib/modules:/lib/modules:ro
labels:
- io.containers.autoupdate=registry
- pratham.container.category=torrent
cap_add:
- NET_ADMIN
- SYS_MODULE
environment:
- SERVERURL=auto # determine and set external IP automatically
- SERVERPORT=51820
- TZ=Asia/Kolkata
sysctls:
- net.ipv4.conf.all.src_valid_mark=1
networks:
- network-torrent
transmission-web:
image: lscr.io/linuxserver/transmission:latest
container_name: transmission-ketu
restart: always
ports:
- "8060:9091"
- "8061:51413"
- "8062:51413/udp"
volumes:
- /trayimurti/torrents/:/downloads:Z
- /trayimurti/torrents/.config:/config:Z
labels:
- io.containers.autoupdate=registry
- pratham.container.category=torrent
environment:
- TZ=Asia/Kolkata
depends_on:
- wireguard-client
networks:
network-torrent
secrets:
gitea_database_user_password:
external: true
nextcloud_database_user_password:
external: true
networks:
network-caddy:
network-gitea:
network-blog:
network-nextcloud:
network-mach:
network-torrent:
# SERVICE_TEMPLATE
# service:
# image:
# container_name:
# command OR entrypoint:
# restart: always
# ports:
# volumes:
# labels:
# - io.containers.autoupdate=registry
# - pratham.container.category=
# cap_add:
# sysctls:
# environment:
# - TZ=Asia/Kolkata
# depends_on:
# secrets:
# networks: