update to latest version

This commit is contained in:
Stille 2024-04-18 18:56:14 +08:00
parent de49b91017
commit fdb0fa3cd3
20 changed files with 132 additions and 987 deletions

19
.env
View File

@ -24,15 +24,20 @@ RSSHUB_DOAMIN_CERT=yourdomain.com.cer
RSSHUB_DOMAIN_KEY=yourdomain.com.key
# ------------------------------------- 镜像和版本 ------------------------------------- #
# ------------------------------------- Nginx ------------------------------------- #
# 镜像和版本,请勿修改删除.
NGINX_VERSION=stable
# ------------------------------------- TTRSS ------------------------------------- #
# 镜像和版本,请勿修改删除.
TTRSS_IMAGE=wangqiru/ttrss
TTRSS_VERSION=latest-2021-05-19
TTRSS_VERSION=nightly-2024-04-03
TTRSS_DB_VERSION=13.14-alpine3.19
# ------------------------------------- FreshRSS ------------------------------------- #
FRESHRSS_X86_VERSION=1.19.1
FRESHRSS_ARM_VERSION=1.19.1-arm
POSTGRES_DB=freshrss
POSTGRES_USER=freshrss
EXPOSED_PORT=30001
# 镜像和版本,请勿修改删除.
FRESHRSS_IMAGE=freshrss/freshrss
FRESHRSS_VERSION=1.23.1
FRESHRSS_DB_VERSION=13.14-alpine3.19

View File

@ -34,6 +34,7 @@
## 安装
### 更新
- **2024-04-18** 更新至最新版本.
- **2022-01-06** 更新脚本支持 FreshRSS, 老版本已转移至`ttrss-rsshub`分支,同样也可以继续使用.
- **2021-07-01** 更新一键安装脚本同时支持 X86 和 ARM 架构.
- **2021-06-18** 更新一键安装脚本.
@ -53,17 +54,16 @@ wget https://raw.githubusercontent.com/stilleshan/rssforever/main/install.sh &&
默认密码: password
### FreshRSS
FreshRSS 首次访问需要设置数据库,选择`PostgreSQL`:
- 主机 freshrss.db
- 用户名 freshrss
- 密码 在`rssforever`目录下的`.env`中`POSTGRES_PASSWORD`变量的值`rssforever.com-xxxxx`为数据库密码
- 数据库 freshrss
FreshRSS 首次访问需要设置数据库类型,选择`PostgreSQL`:
- 数据库类型:`PostgreSQL`
- 主机:`db`(不要随意修改,这里的主机名 db 已在 docker-compose.yml 中定义为服务名)
- 数据库用户名:`freshrss`(不要随意修改,这里的用户名已在 docker-compose.yml 中定义)
- 数据库密码:脚本随机生成在`rssforever`目录下的`.env`中`POSTGRES_PASSWORD`变量的值`rssforever.com-xxxxx`为数据库密码
- 数据库:`freshrss`(不要随意修改,这里的数据库名已在 docker-compose.yml 中定义)
- 表前缀:可留空或填写`freshrss_`
![snapshot01.jpg](images/snapshot01.jpg)
### docker compose 版本
建议将 docker compose 版本升级到 v2.x.x 以上,建议 v2.2.2 版本.
### 更新镜像
本项目配置有`Watchtower`来监控部分容器的镜像更新.
Nginx / TTRSS / FreshRSS 的版本在`.env`文件中定义,请谨慎修改更新.
@ -80,8 +80,15 @@ crontab -e
### 备份恢复
#### 备份
本项目采用 docker compose 部署,所有配置及数据都在`rssforever`目录中,方便备份和迁移.
**其他所有文件及目录,如不清楚请不要随意修改和删除,否则会导致服务无法启动.**
本项目采用 docker compose 部署,所有配置及数据都在`rssforever`目录中,方便备份和迁移.
**rssforever 目录下的文件如不清楚请不要随意修改和删除,否则会导致服务无法启动.**
```shell
cd rssforever
# 进入目录
docker-compose down
# 停止所有服务
# 手动将整个 rssforever 目录迁移至新服务
```
#### 恢复
将域名重新指向新服务器,将备份的`rssforever`目录解压进入启动即可.
```shell

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -33,27 +31,12 @@ services:
- service.rss
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: freshrss/freshrss:${FRESHRSS_ARM_VERSION}
hostname: freshrss-app
restart: unless-stopped
image: ${FRESHRSS_IMAGE}:${FRESHRSS_VERSION}
restart: always
depends_on:
- freshrss.db
- db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
@ -63,3 +46,14 @@ services:
networks:
- rssforever
db:
image: postgres:${FRESHRSS_DB_VERSION}
restart: always
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: freshrss
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: freshrss
networks:
- rssforever

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -33,27 +31,12 @@ services:
- service.rss
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: freshrss/freshrss:${FRESHRSS_ARM_VERSION}
hostname: freshrss-app
restart: unless-stopped
image: ${FRESHRSS_IMAGE}:${FRESHRSS_VERSION}
restart: always
depends_on:
- freshrss.db
- db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
@ -63,13 +46,24 @@ services:
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
db:
image: postgres:${FRESHRSS_DB_VERSION}
restart: always
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: freshrss
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: freshrss
networks:
- rssforever
# ---------------------------------------- acme ---------------------------------------- #
acme:
image: neilpang/acme.sh
image: neilpang/acme.sh:latest
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -31,30 +29,14 @@ services:
- rssforever
depends_on:
- service.rss
- rsshub
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: freshrss/freshrss:${FRESHRSS_ARM_VERSION}
hostname: freshrss-app
restart: unless-stopped
image: ${FRESHRSS_IMAGE}:${FRESHRSS_VERSION}
restart: always
depends_on:
- freshrss.db
- db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
@ -64,6 +46,17 @@ services:
networks:
- rssforever
db:
image: postgres:${FRESHRSS_DB_VERSION}
restart: always
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: freshrss
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: freshrss
networks:
- rssforever
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
@ -79,7 +72,7 @@ services:
- redis
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
@ -95,7 +88,6 @@ services:
- ./rsshub/redis-data:/data
networks:
- rssforever
# ---------------------------------------- watchtower ---------------------------------------- #
# 每天早上 10 点定时更新 RSSHub , 如无需可注释或删除本段.
@ -111,4 +103,3 @@ services:
command: rssforever-acme-1 rssforever-watchtower-1 rssforever-rsshub-1 rssforever-redis-1 rssforever-browserless-1
networks:
- rssforever

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -31,30 +29,14 @@ services:
- rssforever
depends_on:
- service.rss
- rsshub
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: freshrss/freshrss:${FRESHRSS_ARM_VERSION}
hostname: freshrss-app
restart: unless-stopped
image: ${FRESHRSS_IMAGE}:${FRESHRSS_VERSION}
restart: always
depends_on:
- freshrss.db
- db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
@ -64,6 +46,17 @@ services:
networks:
- rssforever
db:
image: postgres:${FRESHRSS_DB_VERSION}
restart: always
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: freshrss
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: freshrss
networks:
- rssforever
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
@ -79,7 +72,7 @@ services:
- redis
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
@ -95,7 +88,6 @@ services:
- ./rsshub/redis-data:/data
networks:
- rssforever
# ---------------------------------------- watchtower ---------------------------------------- #
# 每天早上 10 点定时更新 RSSHub , 如无需可注释或删除本段.
@ -112,14 +104,12 @@ services:
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
# ---------------------------------------- acme ---------------------------------------- #
acme:
image: neilpang/acme.sh
image: neilpang/acme.sh:latest
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -33,8 +31,7 @@ services:
- service.rss
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: ${TTRSS_IMAGE}:${TTRSS_VERSION}
environment:
@ -48,15 +45,19 @@ services:
stdin_open: true
tty: true
restart: always
database.postgres:
image: postgres:13-alpine
image: postgres:${TTRSS_DB_VERSION}
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- ./rss/postgres/data/:/var/lib/postgresql/data
- ./db:/var/lib/postgresql/data
networks:
- rssforever
restart: always
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -33,8 +31,7 @@ services:
- service.rss
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: ${TTRSS_IMAGE}:${TTRSS_VERSION}
environment:
@ -48,19 +45,24 @@ services:
stdin_open: true
tty: true
restart: always
database.postgres:
image: postgres:13-alpine
image: postgres:${TTRSS_DB_VERSION}
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- ./rss/postgres/data/:/var/lib/postgresql/data
- ./db:/var/lib/postgresql/data
networks:
- rssforever
restart: always
# ---------------------------------------- acme.sh ---------------------------------------- #
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
# ---------------------------------------- acme ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
@ -69,4 +71,3 @@ services:
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -31,11 +29,9 @@ services:
- rssforever
depends_on:
- service.rss
- rsshub
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: ${TTRSS_IMAGE}:${TTRSS_VERSION}
environment:
@ -49,18 +45,22 @@ services:
stdin_open: true
tty: true
restart: always
database.postgres:
image: postgres:13-alpine
image: postgres:${TTRSS_DB_VERSION}
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- ./rss/postgres/data/:/var/lib/postgresql/data
- ./db:/var/lib/postgresql/data
networks:
- rssforever
restart: always
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
@ -92,7 +92,6 @@ services:
- ./rsshub/redis-data:/data
networks:
- rssforever
# ---------------------------------------- watchtower ---------------------------------------- #
# 每天早上 10 点定时更新 RSSHub , 如无需可注释或删除本段.
@ -108,4 +107,3 @@ services:
command: rssforever-acme-1 rssforever-watchtower-1 rssforever-rsshub-1 rssforever-redis-1 rssforever-browserless-1
networks:
- rssforever

View File

@ -1,10 +1,8 @@
version: "3"
networks:
rssforever:
# ---------------------------------------- nginx ---------------------------------------- #
services:
nginx:
@ -31,11 +29,9 @@ services:
- rssforever
depends_on:
- service.rss
- rsshub
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
# ---------------------------------------- rss ---------------------------------------- #
service.rss:
image: ${TTRSS_IMAGE}:${TTRSS_VERSION}
environment:
@ -49,18 +45,22 @@ services:
stdin_open: true
tty: true
restart: always
database.postgres:
image: postgres:13-alpine
image: postgres:${TTRSS_DB_VERSION}
environment:
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
volumes:
- ./rss/postgres/data/:/var/lib/postgresql/data
- ./db:/var/lib/postgresql/data
networks:
- rssforever
restart: always
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
@ -92,7 +92,6 @@ services:
- ./rsshub/redis-data:/data
networks:
- rssforever
# ---------------------------------------- watchtower ---------------------------------------- #
# 每天早上 10 点定时更新 RSSHub , 如无需可注释或删除本段.
@ -109,8 +108,7 @@ services:
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
# ---------------------------------------- acme ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
@ -119,4 +117,3 @@ services:
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,65 +0,0 @@
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
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
service.rss:
image: freshrss/freshrss:${FRESHRSS_X86_VERSION}
hostname: freshrss-app
restart: unless-stopped
depends_on:
- freshrss.db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
environment:
CRON_MIN: '*/20'
TZ: Asia/Shanghai
networks:
- rssforever

View File

@ -1,75 +0,0 @@
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
command: ["sh", "-c", "/nginx.sh"]
# ---------------------------------------- ttrss ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
service.rss:
image: freshrss/freshrss:${FRESHRSS_X86_VERSION}
hostname: freshrss-app
restart: unless-stopped
depends_on:
- freshrss.db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
environment:
CRON_MIN: '*/20'
TZ: Asia/Shanghai
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,118 +0,0 @@
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 ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
service.rss:
image: freshrss/freshrss:${FRESHRSS_X86_VERSION}
hostname: freshrss-app
restart: unless-stopped
depends_on:
- freshrss.db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
environment:
CRON_MIN: '*/20'
TZ: Asia/Shanghai
networks:
- rssforever
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
image: diygod/rsshub
restart: always
ports:
- 1200:1200
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: 'redis://redis:6379/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
- redis
- browserless
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
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
networks:
- rssforever

View File

@ -1,129 +0,0 @@
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 ---------------------------------------- #
freshrss.db:
image: postgres:12-alpine
hostname: freshrss.db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${POSTGRES_USER:-freshrss}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-freshrss}
POSTGRES_DB: ${POSTGRES_DB:-freshrss}
networks:
- rssforever
service.rss:
image: freshrss/freshrss:${FRESHRSS_X86_VERSION}
hostname: freshrss-app
restart: unless-stopped
depends_on:
- freshrss.db
volumes:
- ./data:/var/www/FreshRSS/data
- ./extensions:/var/www/FreshRSS/extensions
environment:
CRON_MIN: '*/20'
TZ: Asia/Shanghai
networks:
- rssforever
# ---------------------------------------- rsshub ---------------------------------------- #
rsshub:
image: diygod/rsshub
restart: always
ports:
- 1200:1200
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: 'redis://redis:6379/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
- redis
- browserless
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
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
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,78 +0,0 @@
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
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
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
service.opencc:
image: wangqiru/opencc-api-server:latest
environment:
- NODE_ENV=production
networks:
- rssforever
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

View File

@ -1,89 +0,0 @@
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
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
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
service.opencc:
image: wangqiru/opencc-api-server:latest
environment:
- NODE_ENV=production
networks:
- rssforever
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
# ---------------------------------------- acme.sh ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

View File

@ -1,130 +0,0 @@
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
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
service.opencc:
image: wangqiru/opencc-api-server:latest
environment:
- NODE_ENV=production
networks:
- rssforever
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/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
- redis
- browserless
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
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
networks:
- rssforever

View File

@ -1,142 +0,0 @@
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
service.mercury:
image: wangqiru/mercury-parser-api:latest
networks:
- rssforever
restart: always
service.opencc:
image: wangqiru/opencc-api-server:latest
environment:
- NODE_ENV=production
networks:
- rssforever
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/'
PUPPETEER_WS_ENDPOINT: 'ws://browserless:3000'
depends_on:
- redis
- browserless
networks:
- rssforever
browserless:
image: browserless/chrome
restart: always
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
networks:
- rssforever
# ---------------------------------------- acme.sh ---------------------------------------- #
acme:
image: neilpang/acme.sh
volumes:
- ./acme:/conf
- ./nginx/ssl:/ssl
restart: always
network_mode: host
command: ["sh", "-c", "/conf/start.sh"]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 89 KiB

View File

@ -454,14 +454,7 @@ set_deploy () {
up () {
cd ${WORK_PATH}/rssforever
if [ "${UNAME}" == "x86_64" ]; then
ARCH=x86
ARCH_UPCASE=X86
else
ARCH=arm
ARCH_UPCASE=ARM
fi
cp compose_files/${ARCH}/${COMPOSE_FILE} ./docker-compose.yml
cp compose_files/${COMPOSE_FILE} ./docker-compose.yml
docker-compose up -d
cd ${WORK_PATH}/
echo -e "${Green}${SUCCESS_MSG} / ${ARCH_UPCASE} 部署成功${Font}"