1
0
Fork 0
containers/master-compose.yml

198 lines
6.9 KiB
YAML
Raw Normal View History

2022-07-22 10:24:47 +05:30
version: 3.7
2022-07-21 22:23:41 +05:30
services:
2022-07-22 10:24:47 +05:30
reverse-proxy:
image: caddy:alpine
container_name: caddy-vishwambhar
2022-07-22 10:24:47 +05:30
command: caddy run --config /etc/caddy/Caddyfile
restart: always
ports:
2022-07-27 16:31:40 +05:30
- "8080:80"
- "8443:443"
2022-07-22 10:24:47 +05:30
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
2022-07-22 10:24:47 +05:30
depends_on:
- gitea-web
- thefossguy-blog
- nextcloud-web
2022-07-22 10:24:47 +05:30
- thefossguy-mach
gitea-web:
2022-07-21 22:23:41 +05:30
image: gitea/gitea:latest
2022-07-22 10:24:47 +05:30
container_name: gitea-govinda
2022-07-21 22:23:41 +05:30
restart: always
ports:
# - "127.0.0.1:8010:3000"
# - "127.0.0.1:8011:22"
- "8010:3000"
- "8011:22"
2022-07-21 22:23:41 +05:30
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
2022-07-21 22:23:41 +05:30
- /etc/localtime:/etc/localtime:ro
labels:
- io.containers.autoupdate=registry
2022-07-21 22:23:41 +05:30
environment:
- DEFAULT_BRANCH=master
- RUN_MODE=prod
- SSH_PORT=22
- SSH_LISTEN_PORT=22
- DISABLE_SSH=false
- START_SSH_SERVER=true
2022-07-21 22:23:41 +05:30
- ROOT_URL=https://git.thefossguy.com
- DOMAIN=git.thefossguy.com
- SSH_DOMAIN=git.thefossguy.com
2022-07-21 22:23:41 +05:30
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=gitea-db:5432
2022-07-21 22:23:41 +05:30
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=/run/secrets/gitea_database_user_password
- GITEA__service__DISABLE_REGISTRATION=true
2022-07-21 22:23:41 +05:30
- TZ=Asia/Kolkata
depends_on:
- gitea-db
secrets:
- gitea_database_user_password
gitea-db:
image: postgres:alpine
2022-07-22 10:24:47 +05:30
container_name: gitea-chitragupta
2022-07-21 22:23:41 +05:30
restart: always
volumes:
- /trayimurti/containers/volumes/gitea/database:/var/lib/postgresql/data:Z
2022-07-21 22:23:41 +05:30
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=/run/secrets/gitea_database_user_password
- POSTGRES_DB=gitea
- TZ=Asia/Kolkata
labels:
- io.containers.autoupdate=registry
2022-07-21 22:23:41 +05:30
secrets:
- gitea_database_user_password
2022-07-22 10:24:47 +05:30
thefossguy-blog:
image: klakegg/hugo:alpine
container_name: hugo-vaikunthnatham
restart: always
command: server --disableFastRender -b https://blog.thefossguy.com/ --appendPort=false
2022-07-22 10:24:47 +05:30
ports:
2022-07-27 16:31:40 +05:30
- "8020:1313"
2022-07-22 10:24:47 +05:30
volumes:
- /trayimurti/containers/volumes/blog:/src:Z
labels:
- io.containers.autoupdate=registry
2022-07-22 10:24:47 +05:30
environment:
- TZ=Asia/Kolkata
2022-07-21 22:23:41 +05:30
2022-07-22 10:24:47 +05:30
nextcloud-web:
image: nextcloud:production
2022-07-22 10:24:47 +05:30
container_name: nextcloud-govinda
restart: always
ports:
2022-07-27 16:31:40 +05:30
- "8030:80"
2022-07-22 10:24:47 +05:30
volumes:
- /trayimurti/containers/volumes/nextcloud/web:/var/www/html:z
labels:
- io.containers.autoupdate=registry
2022-07-22 10:24:47 +05:30
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
2022-07-22 10:24:47 +05:30
- TZ=Asia/Kolkata
depends_on:
- nextcloud-db
secrets:
- nextcloud_database_user_password
2022-07-21 22:23:41 +05:30
2022-07-22 10:24:47 +05:30
nextcloud-db:
image: postgres:alpine
2022-07-22 10:24:47 +05:30
container_name: nextcloud-chitragupta
restart: always
volumes:
- /trayimurti/containers/volumes/nextcloud/database:/var/lib/postgresql/data:Z
labels:
- io.containers.autoupdate=registry
2022-07-22 10:24:47 +05:30
environment:
- POSTGRES_DB=nextcloud
- POSTGRES_USER=nextcloud
- POSTGRES_PASSWORD=/run/secrets/nextcloud_database_user_password
2022-07-22 10:24:47 +05:30
- TZ=Asia/Kolkata
secrets:
- nextcloud_database_user_password
2022-07-21 22:23:41 +05:30
nextcloud-cron:
image: nextcloud:production
container_name: nextcloud-karma
restart: always
entrypoint: /cron.sh
volumes:
- /trayimurti/containers/volumes/nextcloud/web:/var/www/html:z
labels:
- io.containers.autoupdate=registry
environment:
- TZ=Asia/Kolkata
depends_on:
- nextcloud-web
- nextcloud-db
2022-07-22 10:24:47 +05:30
thefossguy-mach:
image: klakegg/hugo:alpine
container_name: hugo-mahayogi
restart: always
command: server --disableFastRender -b https://mach.thefossguy.com/ --appendPort=false
2022-07-22 10:24:47 +05:30
ports:
2022-07-27 16:31:40 +05:30
- "8040:1313"
2022-07-22 10:24:47 +05:30
volumes:
- /trayimurti/containers/volumes/mach:/src:Z
labels:
- io.containers.autoupdate=registry
2022-07-22 10:24:47 +05:30
environment:
- TZ=Asia/Kolkata
2022-07-21 22:23:41 +05:30
secrets:
gitea_database_user_password:
external: true
nextcloud_database_user_password:
external: true
# sudo firewall-cmd --permanent --add-port=8080/tcp --add-port=8443/tcp --add-port=8010/tcp --add-port=8011/tcp --add-port=8020/tcp --add-port=8030/tcp --add-port=8040/tcp
2022-07-21 22:23:41 +05:30
# sudo firewall-cmd --reload
2022-07-22 10:24:47 +05:30
# sudo firewall-cmd --list-ports
# sudo zfs create trayimurti/containers/volumes/caddy
# sudo zfs create trayimurti/containers/volumes/gitea
# sudo zfs create trayimurti/containers/volumes/blog
# sudo zfs create trayimurti/containers/volumes/nextcloud
# sudo zfs create trayimurti/containers/volumes/mach
# sudo chown pratham:pratham -vR /trayimurti/containers/volumes
# mkdir -vp /trayimurti/containers/volumes/caddy/{site,ssl/{private,certs},caddy_{data,config}}
# mkdir -vp /trayimurti/containers/volumes/gitea/{database,web,ssh}
# mkdir -vp /trayimurti/containers/volumes/nextcloud/{database,web}
# cp -v Caddyfile /trayimurti/containers/volumes/caddy/
# chmod 700 -v /trayimurti/containers/volumes/caddy/ssl/private
# chmod 600 -v /trayimurti/containers/volumes/caddy/ssl/private/key.pem
# git clone git@gitlab.com:shivohamx3/blog.git /trayimurti/containers/volumes/blog
# git clone git@gitlab.com:shivohamx3/machines.git /trayimurti/containers/volumes/mach
# mkdir -vp /trayimurti/containers/volumes/{mach,blog}/content
# openssl rand -base64 20 | podman secret create gitea_database_user_password -
# openssl rand -base64 20 | podman secret create nextcloud_database_user_password -