initial commit

This commit is contained in:
Philip Henning 2025-08-27 22:16:12 +02:00
commit c5b775fa58
6 changed files with 107 additions and 0 deletions

81
.gitignore vendored Normal file
View file

@ -0,0 +1,81 @@
.env
# General
.DS_Store
__MACOSX/
.AppleDouble
.LSOverride
Icon[
]
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
*~
# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*
# Metadata left by Dolphin file manager, which comes with KDE Plasma
.directory
# Linux trash folder which might appear on any partition or disk
.Trash-*
# .nfs files are created when an open file is removed but is still being accessed
.nfs*
# Log files created by default by the nohup command
nohup.out
# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
# Dump file
*.stackdump
# Folder config file
[Dd]esktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp
# Windows shortcuts
*.lnk
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
!*.code-workspace
# Built Visual Studio Code Extensions
*.vsix

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "src"]
path = src
url = https://github.com/l2xu/betterbahn.git

4
README.md Normal file
View file

@ -0,0 +1,4 @@
# BetterBahn compose
A docker compose for [BetterBahn](https://github.com/l2xu/betterbahn),
with traefik as Reverse Proxy.

16
docker-compose.yml Normal file
View file

@ -0,0 +1,16 @@
services:
betterbahn:
image: betterbahn:latest
build:
context: ./src
dockerfile: Dockerfile
labels:
- "traefik.enable=true"
- "traefik.http.routers.betterbahn.entrypoints=websecure"
- "traefik.http.routers.betterbahn.rule=Host(`${PUBLIC_DOMAIN}`)"
- "traefik.http.routers.betterbahn.tls=true"
- "traefik.http.routers.betterbahn.tls.certresolver=hetzner"
- "traefik.http.routers.betterbahn.tls.domains[0].main=${TLS_DOMAIN}"
- "traefik.http.routers.betterbahn.middlewares=secHeaders@file, autodetectContenttype@file, authentikProd@file"
- "traefik.http.services.betterbahn.loadbalancer.server.port=3000" # set port the container listenes to
- "traefik.http.services.betterbahn.loadbalancer.server.scheme=http"

1
src Submodule

@ -0,0 +1 @@
Subproject commit 50753fe30070fe67397b62c5f5f860fbcbfdf1e1

2
template.env Normal file
View file

@ -0,0 +1,2 @@
PUBLIC_DOMAIN=betterbahn.s1q.dev
TLS_DOMAIN=*.s1q.dev