diff --git a/blueprints/rsshub/docker-compose.yml b/blueprints/rsshub/docker-compose.yml new file mode 100644 index 0000000..cd36d6c --- /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 0000000..24fa336 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 0000000..05bdf6d --- /dev/null +++ b/blueprints/rsshub/template.toml @@ -0,0 +1,12 @@ +[variables] +main_domain = "${domain}" + +[config] +[[config.domains]] +serviceName = "rsshub" +port = 1200 +host = "${main_domain}" + +[[config.env]] + +[[config.mounts]] \ No newline at end of file diff --git a/meta.json b/meta.json index e335c15..21536d4 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" + ] } ]