diff --git a/blueprints/rsshub/docker-compose.yml b/blueprints/rsshub/docker-compose.yml new file mode 100644 index 00000000..cd36d6c8 --- /dev/null +++ b/blueprints/rsshub/docker-compose.yml @@ -0,0 +1,50 @@ +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 + restart: always + ports: + - 1200 + environment: + NODE_ENV: production + CACHE_TYPE: redis + REDIS_URL: "redis://redis:6379/" + PUPPETEER_WS_ENDPOINT: "ws://browserless:3000" # marked + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:1200/healthz"] + interval: 30s + timeout: 10s + retries: 3 + depends_on: + - redis + - browserless # marked + + browserless: # marked + image: browserless/chrome # marked + restart: always # marked + ulimits: # marked + core: # marked + hard: 0 # marked + soft: 0 # marked + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:3000/pressure"] + interval: 30s + timeout: 10s + retries: 3 + + redis: + image: redis:alpine + restart: always + volumes: + - redis-data:/data + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 30s + timeout: 10s + retries: 5 + start_period: 5s + +volumes: + redis-data: \ No newline at end of file diff --git a/blueprints/rsshub/rsshub.png b/blueprints/rsshub/rsshub.png new file mode 100644 index 00000000..24fa336b Binary files /dev/null and b/blueprints/rsshub/rsshub.png differ diff --git a/blueprints/rsshub/template.toml b/blueprints/rsshub/template.toml new file mode 100644 index 00000000..d2162157 --- /dev/null +++ b/blueprints/rsshub/template.toml @@ -0,0 +1,8 @@ +[variables] +main_domain = "${domain}" + +[config] +[[config.domains]] +serviceName = "rsshub" +port = 1200 +host = "${main_domain}" diff --git a/meta.json b/meta.json index cc59e6fa..080fa610 100644 --- a/meta.json +++ b/meta.json @@ -2553,5 +2553,22 @@ "community", "privacy" ] + }, + { + "id": "rsshub", + "name": "RSSHub", + "version": "1.0.0", + "description": "RSSHub is the world's largest RSS network, consisting of over 5,000 global instances.RSSHub delivers millions of contents aggregated from all kinds of sources, our vibrant open source community is ensuring the deliver of RSSHub's new routes, new features and bug fixes.", + "logo": "rsshub.png", + "links": { + "github": "https://github.com/DIYgod/RSSHub", + "website": "https://rsshub.app/", + "docs": "https://docs.rsshub.app/" + }, + "tags": [ + "rss", + "api", + "self-hosted" + ] } ]