defining basic file structure

This commit is contained in:
Zhongheng Liu 2026-10-15 14:44:38 +02:00
commit c0eb568936
11 changed files with 118 additions and 0 deletions

4
README.md Normal file
View file

@ -0,0 +1,4 @@
# Renovating a server
## Networks defined
- proxy: Handles all traffic through the traefik proxy

28
core/docker-compose.yml Normal file
View file

@ -0,0 +1,28 @@
# docker-compose.yml
services:
traefik:
container_name: traefik
image: traefik:v3.7
command:
- "--api.insecure=true"
- "--providers.file.directory=/etc/traefik/apps"
- "--providers.file.watch=true"
- "--entrypoints.web.address=:80"
- "--entrypoints.websecure.address=:443"
- "--entrypoints.webseure.http.tls=true"
ports:
- "80:80" # Web HTTP services entrypoint
- "443:443" # Web HTTPS services entrypoint
- "25565:25565" # Minecraft service port
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./certs:/certs:ro
- /srv/docker:/etc/traefik/apps:ro
networks:
- proxy_net
networks:
auth_net:
driver: bridge
proxy_net:
driver: bridge

9
docker-compose.yml Normal file
View file

@ -0,0 +1,9 @@
include:
# Traefik configuration
- ./core/docker-compose.yml
# stvnliu.me project compose file
- ./domains/stvnliu.me/docker-compose.yml
# alphamill.gr project compose file
- ./domains/alphamill.gr/docker-compose.yml

View file

@ -0,0 +1,31 @@
volumes:
rcm_alphamill_web:
rcm_alphamill_db:
networks:
alphamill_net:
external: true
default_net:
external: true
services:
webmail:
container_name: alphamill_webmail
volumes:
- rcm_alphamill_web:/var/www/html
- rcm_alphamill_db:/var/roundcube/db
networks:
- alphamill_net
- default_net
environment:
- ROUNDCUBEMAIL_DB_TYPE=sqlite
- ROUNDCUBEMAIL_SKIN=elastic
- ROUNDCUBEMAIL_DEFAULT_HOST=tls://imap.purelymail.com
- ROUNDCUBEMAIL_DEFAULT_PORT=993
- ROUNDCUBEMAIL_SMTP_SERVER=tls://imap.purelymail.com
- ROUNDCUBEMAIL_SMTP_PORT=587
- ROUNDCUBEMAIL_COMPOSER_PLUGINS=roundcube/carddav, johndoh/globaladdressbook
- ROUNDCUBEMAIL_PLUGINS=carddav, globaladdressbook
labels:
- traefik.enable=true
- traefik.http.routers.webmail.rule=Host(`webmail.alphamill.gr`)

View file

@ -0,0 +1,18 @@
includes:
- path: ./drasl/docker-compose.yml
services:
minecraft:
image: itzg/minecraft-server:latest
pull_policy: daily
tty: true
stdin_open: true
networks:
- minecraft_net
- default_net
environment:
EULA: "TRUE"
VERSION: 26.3
TYPE: PAPER
JVM_OPTS: "-Dminecraft.api.env=custom -Dminecraft.api.auth.host=https://drasl.stvnliu.me/auth -Dminecraft.api.account.host=https://drasl.stvnliu.me/account -Dminecraft.api.profiles.host=https://drasl.stvnliu.me/account -Dminecraft.api.session.host=https://drasl.stvnliu.me/session -Dminecraft.api.services.host=https://drasl.stvnliu.me/services -Dminecraft.api.discovery.host=https://drasl.stvnliu.me/discovery/minecraft/client"
volumes:
- ./data:/data

View file

@ -0,0 +1,14 @@
networks:
default_net:
- external: true
minecraft_net:
- external: true
services:
drasl:
image: unmojang/drasl
networks:
- default_net
- minecraft_net
volumes:
- ./config:/etc/drasl
- ./data: /var/lib/drasl

View file

@ -0,0 +1,14 @@
networks:
default_net:
external: true
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vw.stvnliu.me"
volumes:
- ./data:/data/
networks:
- default_net