169 lines
3.6 KiB
YAML
169 lines
3.6 KiB
YAML
services:
|
|
# Discord Bot (使用救援镜像)
|
|
discordbot:
|
|
image: discord_bot-discordbot:latest
|
|
container_name: discordbot
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:8080"
|
|
volumes:
|
|
- discord_config:/app/config
|
|
- discord_logs:/app/logs
|
|
- ./discord_tokens.txt:/app/tokens.txt:ro
|
|
networks:
|
|
- web_network
|
|
|
|
# Portainer - Docker管理界面
|
|
portainer:
|
|
image: portainer/portainer-ce:latest
|
|
container_name: portainer
|
|
restart: unless-stopped
|
|
ports:
|
|
- "9000:9000"
|
|
- "9443:9443"
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- portainer_data:/data
|
|
networks:
|
|
- web_network
|
|
|
|
# Caddy - Web服务器和反向代理
|
|
caddy:
|
|
image: caddy:latest
|
|
container_name: caddy
|
|
restart: unless-stopped
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
volumes:
|
|
- ./caddy/Caddyfile:/etc/caddy/Caddyfile:ro
|
|
- caddy_data:/data
|
|
- caddy_config:/config
|
|
networks:
|
|
- web_network
|
|
|
|
# Jellyfin - 媒体服务器
|
|
jellyfin:
|
|
image: jellyfin/jellyfin:latest
|
|
container_name: jellyfin
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8096:8096"
|
|
volumes:
|
|
- jellyfin_config:/config
|
|
- jellyfin_cache:/cache
|
|
- /mnt/data/media:/media:ro
|
|
networks:
|
|
- web_network
|
|
|
|
# qBittorrent - 下载工具
|
|
qbittorrent:
|
|
image: linuxserver/qbittorrent:latest
|
|
container_name: qbittorrent
|
|
restart: unless-stopped
|
|
ports:
|
|
- "18080:8080"
|
|
- "6881:6881"
|
|
- "6881:6881/udp"
|
|
environment:
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- TZ=America/Chicago
|
|
volumes:
|
|
- qbittorrent_config:/config
|
|
- /mnt/data/downloads:/downloads
|
|
networks:
|
|
- web_network
|
|
|
|
# Vaultwarden - 密码管理器
|
|
vaultwarden:
|
|
image: vaultwarden/server:alpine
|
|
container_name: vaultwarden
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8081:80"
|
|
environment:
|
|
- WEB_VAULT_ENABLED=false
|
|
volumes:
|
|
- vaultwarden_data:/data
|
|
networks:
|
|
- web_network
|
|
|
|
# AdGuard Home - DNS服务器
|
|
adguardhome:
|
|
image: adguard/adguardhome:latest
|
|
container_name: adguardhome
|
|
restart: unless-stopped
|
|
ports:
|
|
- "53:53/tcp"
|
|
- "53:53/udp"
|
|
- "3000:3000/tcp"
|
|
volumes:
|
|
- adguard_conf:/opt/adguardhome/conf
|
|
- adguard_work:/opt/adguardhome/work
|
|
networks:
|
|
- web_network
|
|
|
|
# Gitea - Git服务
|
|
gitea:
|
|
image: gitea/gitea:latest
|
|
container_name: gitea
|
|
restart: unless-stopped
|
|
ports:
|
|
- "13000:13000"
|
|
- "222:22"
|
|
environment:
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
volumes:
|
|
- gitea_data:/data
|
|
networks:
|
|
- web_network
|
|
|
|
# Home Assistant - 智能家居
|
|
homeassistant:
|
|
image: ghcr.io/home-assistant/home-assistant:stable
|
|
container_name: homeassistant
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8123:8123"
|
|
environment:
|
|
- TZ=America/Chicago
|
|
volumes:
|
|
- homeassistant_config:/config
|
|
networks:
|
|
- web_network
|
|
|
|
# SillyTavern - AI聊天
|
|
sillytavern:
|
|
image: ghcr.io/sillytavern/sillytavern:latest
|
|
container_name: sillytavern
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8000:8000"
|
|
environment:
|
|
- TZ=America/Chicago
|
|
volumes:
|
|
- sillytavern_data:/home/node/app/data
|
|
networks:
|
|
- web_network
|
|
|
|
volumes:
|
|
discord_config:
|
|
discord_logs:
|
|
portainer_data:
|
|
caddy_data:
|
|
caddy_config:
|
|
jellyfin_config:
|
|
jellyfin_cache:
|
|
qbittorrent_config:
|
|
vaultwarden_data:
|
|
adguard_conf:
|
|
adguard_work:
|
|
gitea_data:
|
|
homeassistant_config:
|
|
sillytavern_data:
|
|
|
|
networks:
|
|
web_network:
|
|
driver: bridge |