Files
Docker-Compose/freshrss/docker-compose.yml
2025-12-14 01:12:00 +08:00

98 lines
3.2 KiB
YAML

services:
main:
image: freshrss/freshrss:1.26.3
restart: unless-stopped
logging:
options:
max-size: 10m
volumes:
# Recommended volume for FreshRSS persistent data such as configuration and SQLite databases
- /mnt/docker-storage/freshrss/data:/var/www/FreshRSS/data
# Optional volume for storing third-party extensions
- /mnt/docker-storage/freshrss/extensions:/var/www/FreshRSS/extensions
ports:
# If you want to open a port 8080 on the local machine:
- "8095:80"
environment:
# A timezone http://php.net/timezones (default is UTC)
TZ: Asia/Taipei
PUID: 2000
PGID: 2000
# Cron job to refresh feeds at specified minutes
CRON_MIN: '5, 35'
# Optional parameter, set to 1 to enable OpenID Connect (only available in our Debian image)
# Requires more environment variables. See https://freshrss.github.io/FreshRSS/en/admins/16_OpenID-Connect.html
OIDC_ENABLED: 1
OIDC_PROVIDER_METADATA_URL: https://auth.dua.casa/application/o/freshrss/.well-known/openid-configuration
OIDC_CLIENT_ID: byBNp5WwEbfd7fsqWrk5Ab4gjYKXkkKCbswedg7k
OIDC_CLIENT_SECRET: caMY7NFP4LYGBbPXqsBdEMU6vYQRy2jrGAzCKo15JMUUgIZ2P8CwnyrMc8jZcf6NQxDUdllbmY31H0fbDnvcNTFEL2Iy9TLVWcR7fywZ8Eyn4jrssWtOCZSIfZ3MgKp8
#OIDC_X_FORWARDED_HEADERS: X-Forwarded-Port X-Forwarded-Proto X-Forwarded-Host
OIDC_X_FORWARDED_HEADERS: X-Forwarded-Proto
OIDC_SCOPES: openid email profile
deploy:
labels:
- homepage.group=Storage
- homepage.name=FreshRSS
- homepage.icon=sh-freshrss-light
- homepage.href=https://rss.dua.casa/
- homepage.description=A free, self-hostable feed aggregator.
- homepage.widget.type=freshrss
- homepage.widget.url=http://cluster.localdomain:8095
- homepage.widget.username=hayden0828
- homepage.widget.password=XlRYT2vUV9PHIajtsY566ah7gvoLEOE4
healthcheck:
test: ["CMD", "cli/health.php"]
timeout: 10s
start_period: 300s
start_interval: 11s
interval: 60s
retries: 3
rsshub:
image: diygod/rsshub:chromium-bundled
restart: always
user: "2000:2000"
ports:
- "1200:1200"
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: "redis://redis:6379/"
# Iwara
IWARA_USERNAME: ${IWARA_USERNAME}
IWARA_PASSWORD: ${IWARA_PASSWORD}
# Pixiv Cookie
PIXIV_REFRESHTOKEN: ${PIXIV_REFRESHTOKEN}
PIXIV_BYPASS_CDN: 1
# E-Hentai Cookie
EH_IPB_MEMBER_ID: ${EHENTAI_MEMBER_ID}
EH_IPB_PASS_HASH: ${EHENTAI_PASS_HASH}
EH_SK: ${EHENTAI_SK}
EH_IGNEOUS: ${EHENTAI_IGNEOUS}
# JavDB Cookie
JAVDB_SESSION: ${JAVDB_SESSION}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:1200/healthz"]
interval: 60s
timeout: 10s
retries: 3
depends_on:
- redis
redis:
image: redis:alpine
restart: always
user: "2000:2000"
volumes:
- /mnt/docker-storage/freshrss/hub:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 60s
timeout: 10s
retries: 5
start_period: 5s