250 lines
7.9 KiB
YAML
250 lines
7.9 KiB
YAML
version: 3.7
|
|
|
|
services:
|
|
|
|
|
|
reverse-proxy:
|
|
image: docker.io/library/caddy:alpine
|
|
pull_policy: always
|
|
container_name: caddy-vishwambhar
|
|
command: caddy run --config /etc/caddy/Caddyfile
|
|
restart: always
|
|
ports:
|
|
- "8001:80"
|
|
- "8002:443"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/caddy/Caddyfile:/etc/caddy/Caddyfile:Z
|
|
- ${CONTAINER_VOLUME_PATH}/caddy/site:/srv:Z
|
|
- ${CONTAINER_VOLUME_PATH}/caddy/caddy_data:/data:Z
|
|
- ${CONTAINER_VOLUME_PATH}/caddy/caddy_config:/config:Z
|
|
- ${CONTAINER_VOLUME_PATH}/caddy/ssl:/etc/ssl:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=proxy
|
|
environment:
|
|
- TZ=Asia/Kolkata
|
|
depends_on:
|
|
- gitea-web
|
|
- thefossguy-blog
|
|
- thefossguy-mach
|
|
- nextcloud-web
|
|
- gotify-server
|
|
- uptimekuma-server
|
|
- transmission-web
|
|
|
|
################################################################################
|
|
|
|
gitea-web:
|
|
image: docker.io/gitea/gitea:latest
|
|
pull_policy: always
|
|
container_name: gitea-govinda
|
|
restart: always
|
|
ports:
|
|
- "8003:3000"
|
|
- "8004:22"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/gitea/web:/data:Z
|
|
- ${CONTAINER_VOLUME_PATH}/gitea/ssh:/data/git/.ssh: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
|
|
|
|
|
|
gitea-db:
|
|
image: docker.io/library/postgres:15-alpine
|
|
pull_policy: always
|
|
container_name: gitea-chitragupta
|
|
restart: always
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/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
|
|
|
|
################################################################################
|
|
|
|
thefossguy-blog:
|
|
image: docker.io/klakegg/hugo:debian
|
|
pull_policy: always
|
|
container_name: hugo-vaikunthnatham
|
|
command: server --disableFastRender -b https://blog.thefossguy.com/ --appendPort=false
|
|
restart: always
|
|
ports:
|
|
- "8005:1313"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/blog:/src:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=blog
|
|
environment:
|
|
- TZ=Asia/Kolkata
|
|
|
|
|
|
thefossguy-mach:
|
|
image: docker.io/klakegg/hugo:ext-debian
|
|
pull_policy: always
|
|
container_name: hugo-mahayogi
|
|
command: server --disableFastRender -b https://mach.thefossguy.com/ --appendPort=false
|
|
restart: always
|
|
ports:
|
|
- "8006:1313"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/mach:/src:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=mach
|
|
environment:
|
|
- TZ=Asia/Kolkata
|
|
|
|
################################################################################
|
|
|
|
nextcloud-web:
|
|
image: docker.io/library/nextcloud:production
|
|
pull_policy: always
|
|
container_name: nextcloud-govinda
|
|
restart: always
|
|
ports:
|
|
- "8007:80"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/nextcloud/web:/var/www/html:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=cloud
|
|
# https://stackoverflow.com/questions/29924843/how-do-i-set-hostname-in-docker-compose/63291253#63291253
|
|
hostname: cloud.thefossguy.com
|
|
environment:
|
|
- POSTGRES_PASSWORD=/run/secrets/nextcloud_database_user_password
|
|
- POSTGRES_DB=nextcloud
|
|
- POSTGRES_USER=nextcloud
|
|
- POSTGRES_HOST=nextcloud-db
|
|
# - NEXTCLOUD_HOSTNAME=cloud.thefossguy.com
|
|
- NEXTCLOUD_TRUSTED_DOMAINS=cloud.thefossguy.com
|
|
- APACHE_DISABLE_REWRITE_IP=1
|
|
- OVERWRITECLIURL=https://cloud.thefossguy.com
|
|
- OVERWRITEPROTOCOL=https
|
|
- TZ=Asia/Kolkata
|
|
depends_on:
|
|
- nextcloud-db
|
|
secrets:
|
|
- nextcloud_database_user_password
|
|
|
|
|
|
nextcloud-db:
|
|
image: docker.io/library/postgres:15-alpine
|
|
pull_policy: always
|
|
container_name: nextcloud-chitragupta
|
|
restart: always
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/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
|
|
|
|
|
|
################################################################################
|
|
|
|
uptimekuma-server:
|
|
image: docker.io/louislam/uptime-kuma:debian
|
|
pull_policy: always
|
|
container_name: uptime-vishnu
|
|
restart: always
|
|
ports:
|
|
- "8008:3001"
|
|
volumes:
|
|
- ${CONTAINER_VOLUME_PATH}/uptimekuma:/app/data:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=uptime
|
|
environment:
|
|
- TZ=Asia/Kolkata
|
|
depends_on:
|
|
- gitea-web
|
|
- thefossguy-blog
|
|
- thefossguy-mach
|
|
- nextcloud-web
|
|
- gotify-server
|
|
|
|
################################################################################
|
|
|
|
transmission-web:
|
|
image: lscr.io/linuxserver/transmission:latest
|
|
pull_policy: always
|
|
container_name: transmission-raadhe
|
|
restart: always
|
|
ports:
|
|
- "8009:9091" # transmission web-ui
|
|
- "8010:51413" # torrent port TCP
|
|
- "8011:51413/udp" # torrent port UDP
|
|
volumes:
|
|
- /trayimurti/torrents/downloads:/downloads:Z
|
|
- /trayimurti/torrents/config:/config:Z
|
|
labels:
|
|
- io.containers.autoupdate=registry
|
|
- pratham.container.category=torrent
|
|
environment:
|
|
- TZ=Asia/Kolkata
|
|
|
|
|
|
secrets:
|
|
gitea_database_user_password:
|
|
external: true
|
|
nextcloud_database_user_password:
|
|
external: true
|
|
|
|
|
|
# SERVICE_TEMPLATE
|
|
# service:
|
|
# image:
|
|
# pull_policy: always
|
|
# container_name:
|
|
# command OR entrypoint:
|
|
# restart: always
|
|
# ports:
|
|
# volumes:
|
|
# labels:
|
|
# - io.containers.autoupdate=registry
|
|
# - pratham.container.category=
|
|
# environment:
|
|
# - TZ=Asia/Kolkata
|
|
# sysctls:
|
|
# cap_add:
|
|
# depends_on:
|
|
# secrets:
|
|
# networks:
|