Commit 934c51
2026-01-29 17:57:16 Freedom: Init| /dev/null .. freshrss.md | |
| @@ 0,0 1,68 @@ | |
| + | # Freshrss |
| + | |
| + | |
| + | ```yaml |
| + | version: "3.9" |
| + | |
| + | services: |
| + | certbot: |
| + | image: certbot/certbot:latest |
| + | container_name: certbot |
| + | volumes: |
| + | - ./certbot/www:/var/www/certbot |
| + | - ./certbot/conf:/etc/letsencrypt |
| + | |
| + | nginx: |
| + | image: nginx:alpine |
| + | container_name: nginx |
| + | restart: unless-stopped |
| + | depends_on: |
| + | - freshrss |
| + | - wallabag |
| + | ports: |
| + | - "80:80" |
| + | - "443:443" |
| + | volumes: |
| + | - ./nginx/conf.d:/etc/nginx/conf.d:ro |
| + | - ./certbot/www:/var/www/certbot:ro |
| + | - ./certbot/conf:/etc/letsencrypt:ro |
| + | |
| + | postgres: |
| + | image: postgres:16 |
| + | container_name: postgres |
| + | restart: unless-stopped |
| + | environment: |
| + | POSTGRES_USER: postgres |
| + | POSTGRES_PASSWORD: change_this_admin_password |
| + | volumes: |
| + | - ./postgres_data:/var/lib/postgresql/data |
| + | - ./initdb:/docker-entrypoint-initdb.d |
| + | ports: |
| + | - "5432:5432" |
| + | |
| + | freshrss: |
| + | image: freshrss/freshrss:latest |
| + | container_name: freshrss |
| + | restart: unless-stopped |
| + | depends_on: |
| + | - postgres |
| + | environment: |
| + | TZ: UTC |
| + | volumes: |
| + | - ./freshrss_data:/var/www/FreshRSS/data |
| + | - ./freshrss_extensions:/var/www/FreshRSS/extensions |
| + | ``` |
| + | |
| + | ## Data migration |
| + | |
| + | Manual approach: |
| + | |
| + | * In FreshRSS, go to **Subscription management → Import / Export**. |
| + | * Export: |
| + | * Feed list |
| + | * Labeled articles |
| + | * Favorites |
| + | * Save the exported file. |
| + | * On the new server, import the file in the same screen. |
| + | |
| + | Limitation: user accounts are not migrated. TODO: migrate via database. |
