sudo apt update
sudo apt install -y podman podman-compose
mkdir -p ~/rsshub && cd ~/rsshub
nano compose.yaml
services:
rsshub:
image: docker.io/diygod/rsshub:latest
restart: always
ports:
- "1200:1200"
environment:
NODE_ENV: production
CACHE_TYPE: redis
REDIS_URL: "redis://localhost:6379/"
PLAYWRIGHT_WS_ENDPOINT: "ws://localhost:3000"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:1200/healthz"]
interval: 30s
timeout: 10s
retries: 3
depends_on:
- redis
- browserless
browserless:
image: docker.io/browserless/chrome:latest
restart: always
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/pressure"]
interval: 30s
timeout: 10s
retries: 3
redis:
image: docker.io/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:
インストール
podman-compose up -d
# 起動確認
podman ps
# ユーザーがログアウトしてもコンテナを維持する設定
sudo loginctl enable-linger $USER
# 自動起動用サービスを登録
mkdir -p ~/.config/systemd/user/
nano ~/.config/systemd/user/rsshub.service
[Unit]
Description=RSSHub Podman Compose Service
After=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=%h/rsshub
ExecStart=/usr/bin/podman-compose up -d
ExecStop=/usr/bin/podman-compose down
[Install]
WantedBy=default.target
# 1. 新しいサービスファイルをシステムに認識させる
systemctl --user daemon-reload
# 2. 自動起動を有効化し、今すぐサービスを連動させる
systemctl --user enable --now rsshub.service
sudo loginctl enable-linger $USER
podman-compose down
podman-compose up -d