Stacks included:
- Infrastructure: traefik, authentik, gitea, registry, watchtower, dockge
- Monitoring: smokeping, changedetection
- Apps: ghost, gollum, wallabag, radicale, invidious, xbackbone, filebrowser, syncthing, zerotier
- Custom: obsidian-tools, memento, perilous, ramz, bookclub, brain
🤖 Generated with Claude Code
33 lines
801 B
YAML
33 lines
801 B
YAML
services:
|
|
web:
|
|
image: nginx:latest
|
|
container_name: brain
|
|
restart: unless-stopped
|
|
expose:
|
|
- 80
|
|
volumes:
|
|
- ./public:/usr/share/nginx/html
|
|
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
networks:
|
|
- web
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.brain.entrypoints=https"
|
|
- "traefik.http.routers.brain.rule=Host(`brain.${DOMAIN}`)"
|
|
- "traefik.http.routers.brain.tls.certresolver=http"
|
|
- "traefik.http.routers.brain.middlewares=auth@file"
|
|
|
|
sftp:
|
|
image: atmoz/sftp
|
|
container_name: brain-sftp
|
|
restart: unless-stopped
|
|
volumes:
|
|
- ./public:/home/commander/upload
|
|
ports:
|
|
- "2232:22"
|
|
command: ${BRAIN_SFTP_USER}:${BRAIN_SFTP_PASSWORD}:1001
|
|
|
|
networks:
|
|
web:
|
|
external: true
|