57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
version: "3.9"
|
|
|
|
networks:
|
|
public:
|
|
external: true
|
|
|
|
services:
|
|
rsshub:
|
|
# two ways to enable puppeteer:
|
|
# * comment out marked lines, then use this image instead: diygod/rsshub:chromium-bundled
|
|
# * (consumes more disk space and memory) leave everything unchanged
|
|
image: diygod/rsshub
|
|
container_name: rsshub
|
|
restart: always
|
|
depends_on:
|
|
- redis
|
|
- browserless # marked
|
|
environment:
|
|
NODE_ENV: production
|
|
CACHE_TYPE: redis
|
|
REDIS_URL: "redis://redis:6379/"
|
|
PUPPETEER_WS_ENDPOINT: "ws://browserless:3000" # marked
|
|
# ports:
|
|
# - "1200:1200"
|
|
networks:
|
|
- public
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.rsshub.rule=Host(`${RSSHUB_DOMAIN}`)"
|
|
- "traefik.http.routers.rsshub.service=rsshub-service"
|
|
- "traefik.http.services.rsshub-service.loadbalancer.server.port=1200"
|
|
- "traefik.http.routers.rsshub.tls=true"
|
|
- "traefik.http.routers.rsshub.tls.certresolver=le"
|
|
|
|
browserless: # marked
|
|
image: browserless/chrome # marked
|
|
container_name: browserless
|
|
restart: always # marked
|
|
ulimits: # marked
|
|
core: # marked
|
|
hard: 0 # marked
|
|
soft: 0 # marked
|
|
networks:
|
|
- public
|
|
|
|
redis:
|
|
image: redis:alpine
|
|
container_name: redis
|
|
restart: always
|
|
volumes:
|
|
- "redis-data:/data"
|
|
networks:
|
|
- public
|
|
|
|
volumes:
|
|
redis-data:
|