ansible-nas/roles/freshrss/tasks/main.yml
Dylan Lathrum ed18f41b55 Add Fresh RSS
FreshRSS is a self-hosted RSS feed aggregator like Leed or Kriss Feed.

It is lightweight, easy to work with, powerful, and customizable.

It is a multi-user application with an anonymous reading mode. It supports custom tags. There is an API for (mobile) clients, and a Command-Line Interface.

Thanks to the WebSub standard (formerly PubSubHubbub), FreshRSS is able to receive instant push notifications from compatible sources, such as Mastodon, Friendica, WordPress, Blogger, FeedBurner, etc.

FreshRSS natively supports basic Web scraping, based on XPath, for Web sites not providing any RSS / Atom feed.

Finally, it supports extensions for further tuning.
2022-05-24 15:46:09 -07:00

32 lines
1.1 KiB
YAML

---
- name: Create FreshRSS Directories
file:
path: "{{ item }}"
state: directory
# mode: 0755
with_items:
- "{{ freshrss_data_directory }}/data"
- "{{ freshrss_extensions_directory }}/extensions"
- name: FreshRSS Docker Container
docker_container:
name: freshrss
image: freshrss/freshrss
pull: true
volumes:
- "{{ freshrss_data_directory }}/data:/var/www/FreshRSS/data:rw"
- "{{ freshrss_extensions_directory }}/extensions:/var/www/FreshRSS/extensions:rw"
ports:
- "{{ freshrss_port }}:80"
env:
TZ: "{{ ansible_nas_timezone }}"
CRON_MIN: "1,31"
restart_policy: unless-stopped
memory: "{{ freshrss_memory }}"
labels:
traefik.enable: "{{ freshrss_available_externally }}"
traefik.http.routers.freshrss.rule: "Host(`{{ freshrss_hostname }}.{{ ansible_nas_domain }}`)"
traefik.http.routers.freshrss.tls.certresolver: "letsencrypt"
traefik.http.routers.freshrss.tls.domains[0].main: "{{ ansible_nas_domain }}"
traefik.http.routers.freshrss.tls.domains[0].sans: "*.{{ ansible_nas_domain }}"
traefik.http.services.freshrss.loadbalancer.server.port: "80"