107 lines
2.7 KiB
YAML
107 lines
2.7 KiB
YAML
version: "3"
|
|
|
|
|
|
networks:
|
|
rssforever:
|
|
|
|
|
|
# ---------------------------------------- nginx ---------------------------------------- #
|
|
services:
|
|
nginx:
|
|
image: nginx:${NGINX_VERSION}
|
|
restart: always
|
|
ports:
|
|
- 80:80
|
|
- 443:443
|
|
volumes:
|
|
- ./nginx/conf/nginx.conf:/etc/nginx/nginx.conf
|
|
- ./nginx/conf/nginx.sh:/nginx.sh
|
|
- ./nginx/vhost:/etc/nginx/conf.d/vhost
|
|
- ./nginx/ssl:/etc/nginx/ssl
|
|
- ./nginx/html:/usr/share/nginx/html
|
|
environment:
|
|
- PROTOCOL=${PROTOCOL}
|
|
- RSS_DOMAIN=${RSS_DOMAIN}
|
|
- RSS_DOAMIN_CERT=${RSS_DOAMIN_CERT}
|
|
- RSS_DOMAIN_KEY=${RSS_DOMAIN_KEY}
|
|
- RSSHUB_DOMAIN=${RSSHUB_DOMAIN}
|
|
- RSSHUB_DOAMIN_CERT=${RSSHUB_DOAMIN_CERT}
|
|
- RSSHUB_DOMAIN_KEY=${RSSHUB_DOMAIN_KEY}
|
|
networks:
|
|
- rssforever
|
|
depends_on:
|
|
- service.rss
|
|
- rsshub
|
|
command: ["sh", "-c", "/nginx.sh"]
|
|
|
|
|
|
# ---------------------------------------- ttrss ---------------------------------------- #
|
|
service.rss:
|
|
image: ${TTRSS_IMAGE}:${TTRSS_VERSION}
|
|
environment:
|
|
- SELF_URL_PATH=${PROTOCOL}://${RSS_DOMAIN}
|
|
- DB_PASS=${POSTGRES_PASSWORD}
|
|
- PUID=1000
|
|
- PGID=1000
|
|
- ENABLE_PLUGINS=auth_internal,remove_iframe_sandbox
|
|
networks:
|
|
- rssforever
|
|
stdin_open: true
|
|
tty: true
|
|
restart: always
|
|
|
|
|
|
database.postgres:
|
|
image: postgres:13-alpine
|
|
environment:
|
|
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
|
volumes:
|
|
- ./rss/postgres/data/:/var/lib/postgresql/data
|
|
networks:
|
|
- rssforever
|
|
restart: always
|
|
|
|
|
|
# ---------------------------------------- rsshub ---------------------------------------- #
|
|
rsshub:
|
|
image: diygod/rsshub
|
|
restart: always
|
|
ports:
|
|
- 1200:1200
|
|
environment:
|
|
NODE_ENV: production
|
|
CACHE_TYPE: redis
|
|
REDIS_URL: 'redis://redis:6379/'
|
|
depends_on:
|
|
- redis
|
|
networks:
|
|
- rssforever
|
|
|
|
|
|
redis:
|
|
image: redis:alpine
|
|
restart: always
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
volumes:
|
|
- ./rsshub/redis-data:/data
|
|
networks:
|
|
- rssforever
|
|
|
|
|
|
# ---------------------------------------- watchtower ---------------------------------------- #
|
|
# 每天早上 10 点定时更新 RSSHub , 如无需可注释或删除本段.
|
|
watchtower:
|
|
image: containrrr/watchtower:latest
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
- WATCHTOWER_CLEANUP=true
|
|
- WATCHTOWER_SCHEDULE=0 0 10 * * *
|
|
restart: always
|
|
command: rssforever_acme-1 rssforever_watchtower_1 rssforever_rsshub_1 rssforever_redis_1 rssforever_browserless_1 rssforever_acme_1 rssforever-watchtower-1 rssforever_rsshub-1 rssforever_redis-1 rssforever_browserless-1
|
|
networks:
|
|
- rssforever
|
|
|