diff --git a/README.md b/README.md index acf5576b..7265a712 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,7 @@ Ansible config and a bunch of Docker containers. * [TimeMachine](https://github.com/mbentley/docker-timemachine) - Mac backup server * [Traefik](https://traefik.io/) - Web proxy and SSL certificate manager * [Transmission](https://transmissionbt.com/) - BitTorrent client (with OpenVPN if you have a supported VPN provider) +* [Wallabag](https://wallabag.org/) - Save and classify articles. Read them later. * [Watchtower](https://github.com/v2tec/watchtower) - Monitor your Docker containers and update them if a new version is available * [ZNC](https://wiki.znc.in/ZNC) - IRC bouncer to stay connected to favourite IRC networks and channels diff --git a/docs/applications/wallabag.md b/docs/applications/wallabag.md new file mode 100644 index 00000000..03ac4f2a --- /dev/null +++ b/docs/applications/wallabag.md @@ -0,0 +1,17 @@ +# Wallabag + +Homepage: [https://www.wallabag.org/](https://www.wallabag.org/) + +wallabag is a self-hostable PHP application allowing you to not miss any content anymore. Click, save and read it when you can. It extracts content so that you can read it when you have time. + +## Usage + +Set `wallabag_enabled: true` in your `group_vars/all.yml` file. + +If you want to access Wallabag externally, don't forget to set `wallabag_available_externally: "true"` in your `group_vars/all.yml` file. + +I reccomend using the mobile app, which will sync with this installation so you have access to your saved articles even if you don't have signal or wifi access. + +The default credentials are wallabag:wallabag + +The Wallabag web interface can be found at http://ansible_nas_host_or_ip:7780. diff --git a/docs/configuration/application_ports.md b/docs/configuration/application_ports.md index e31a37b7..c958bbb4 100644 --- a/docs/configuration/application_ports.md +++ b/docs/configuration/application_ports.md @@ -35,4 +35,5 @@ By default, applications can be found on the ports listed below. | Traefik | 8083 | | | Transmission | 9091 | with VPN | | Transmission | 9092 | | +| Wallabag | 7780 | | | ZNC | 6677 | | diff --git a/group_vars/all.yml.dist b/group_vars/all.yml.dist index 6bb7101b..f80f155a 100644 --- a/group_vars/all.yml.dist +++ b/group_vars/all.yml.dist @@ -68,6 +68,9 @@ bitwarden_enabled: false # Finance firefly_enabled: false +# Wallabag +wallabag_enabled: false + ### ### General ### @@ -543,4 +546,10 @@ nzbget_available_externally: "false" nzbget_data_directory: "{{ docker_home }}/nzbget" nzbget_download_directory: "{{ downloads_root }}" nzbget_user_id: 0 -nzbget_group_id: 0 \ No newline at end of file +nzbget_group_id: 0 + +### +### Wallabag +### +wallabag_available_externally: "false" +wallabag_data_directory: "{{ docker_home }}/wallabag" \ No newline at end of file diff --git a/nas.yml b/nas.yml index 9354d83a..383f9992 100644 --- a/nas.yml +++ b/nas.yml @@ -158,4 +158,8 @@ - import_tasks: tasks/nzbget.yml when: (nzbget_enabled | default(False)) - tags: nzbget \ No newline at end of file + tags: nzbget + + - import_tasks: tasks/wallabag.yml + when: (wallabag_enabled | default(False)) + tags: wallabag \ No newline at end of file diff --git a/tasks/wallabag.yml b/tasks/wallabag.yml new file mode 100644 index 00000000..993e5aec --- /dev/null +++ b/tasks/wallabag.yml @@ -0,0 +1,28 @@ +- name: Create Wallabag Directories + file: + path: "{{ item }}" + state: directory + with_items: + - "{{ wallabag_data_directory }}/data" + - "{{ wallabag_data_directory }}/images" + +- name: Wallabag Docker Container + docker_container: + name: wallabag + image: wallabag/wallabag:latest + pull: true + volumes: + - "{{ wallabag_data_directory }}/data:/var/www/wallabag/data:rw" + - "{{ wallabag_data_directory }}/images:/var/www/wallabag/web/assets/images:rw" + ports: + - "7780:80" + env: + SYMFONY__ENV__DOMAIN_NAME: "https://wallabag.{{ ansible_nas_domain }}" + restart_policy: unless-stopped + labels: + traefik.backend: "wallabag" + traefik.frontend.rule: "Host:wallabag.{{ ansible_nas_domain }}" + traefik.enable: "{{ wallabag_available_externally }}" + traefik.port: "80" + traefik.frontend.headers.SSLRedirect: "true" + memory: 1g \ No newline at end of file diff --git a/templates/traefik/traefik.toml b/templates/traefik/traefik.toml index 105e3b1f..2c5b3876 100644 --- a/templates/traefik/traefik.toml +++ b/templates/traefik/traefik.toml @@ -204,4 +204,5 @@ onDemand = false # create certificate when container is created "thelounge.{{ ansible_nas_domain }}", "transmission.{{ ansible_nas_domain }}", "transmission-openvpn.{{ ansible_nas_domain }}", + "wallabag.{{ ansible_nas_domain }}", "znc.{{ ansible_nas_domain }}"]