summaryrefslogtreecommitdiff
path: root/roles/scurvy
diff options
context:
space:
mode:
Diffstat (limited to 'roles/scurvy')
-rw-r--r--roles/scurvy/tasks/main.yml22
-rw-r--r--roles/scurvy/templates/docker-compose.yml.j261
2 files changed, 83 insertions, 0 deletions
diff --git a/roles/scurvy/tasks/main.yml b/roles/scurvy/tasks/main.yml
new file mode 100644
index 0000000..c1d8902
--- /dev/null
+++ b/roles/scurvy/tasks/main.yml
@@ -0,0 +1,22 @@
+---
+- name: ensure scurvy docker/compose exist
+ file:
+ path: /etc/docker/compose/scurvy
+ state: directory
+ owner: root
+ group: root
+ mode: 0700
+
+- name: build scurvy docker-compose.yml.j2
+ template:
+ src: ../templates/docker-compose.yml.j2
+ dest: /etc/docker/compose/scurvy/docker-compose.yml
+ owner: root
+ group: root
+ mode: u=rw,g=r,o=r
+
+- name: daemon-reload and enable scurvy
+ ansible.builtin.systemd_service:
+ state: restarted
+ enabled: true
+ name: docker-compose@scurvy
diff --git a/roles/scurvy/templates/docker-compose.yml.j2 b/roles/scurvy/templates/docker-compose.yml.j2
new file mode 100644
index 0000000..838030c
--- /dev/null
+++ b/roles/scurvy/templates/docker-compose.yml.j2
@@ -0,0 +1,61 @@
+version: '3'
+services:
+ gluetun:
+ image: qmcgaw/gluetun
+ container_name: gluetun
+ cap_add:
+ - NET_ADMIN
+ devices:
+ - /dev/net/tun:/dev/net/tun
+ ports:
+ - 127.0.0.1:9000:8080/tcp
+ - 127.0.0.1:6881:6881
+ - 127.0.0.1:6881:6881/udp
+ volumes:
+ - /gluetun
+ environment:
+ - VPN_SERVICE_PROVIDER=mullvad
+ - VPN_TYPE=openvpn
+ - OPENVPN_USER={{ openvpn_user }}
+ - SERVER_CITIES=Salt Lake City UT
+
+ qbittorrent:
+ image: hotio/qbittorrent:latest
+ container_name: qbittorrent
+ environment:
+ - PUID=1000
+ - PGID=1000
+ volumes:
+ - qbittorrent_config:/config:rw
+ - type: bind
+ source: /mnt/hdd-01
+ target: /hdd-01
+ - type: bind
+ source: /mnt/ssd-01
+ target: /ssd-01
+ restart: unless-stopped
+ network_mode: "container:gluetun"
+
+ jellyfin:
+ image: lscr.io/linuxserver/jellyfin:latest
+ container_name: jellyfin
+ environment:
+ - JELLYFIN_PublishedServerUrl=https://jellyfin.internal.simponic.xyz
+ ports:
+ - 127.0.0.1:8096:8096
+ devices:
+ - /dev/dri:/dev/dri
+ volumes:
+ - type: bind
+ source: /mnt/hdd-01
+ target: /hdd-01
+ - type: bind
+ source: /mnt/ssd-01
+ target: /ssd-01
+ - jellyfin_config:/config:rw
+ - jellyfin_cache:/cache:rw
+
+volumes:
+ jellyfin_config:
+ jellyfin_cache:
+ qbittorrent_config: