@@ -1,26 +0,0 @@
|
||||
---
|
||||
- name: Deploy Cobalt
|
||||
include_role:
|
||||
name: docker
|
||||
vars:
|
||||
name: cobalt
|
||||
directories:
|
||||
- "{{ data_dir }}/cobalt"
|
||||
image:
|
||||
name: ghcr.io/imputnet/cobalt
|
||||
tag: 11
|
||||
env:
|
||||
API_URL: "https://dl.alexav.gg"
|
||||
JWT_SECRET: "{{ COBALT_JWT_SECRET }}"
|
||||
API_AUTH_REQUIRED: "1"
|
||||
API_KEY_URL: "file:///keys.json"
|
||||
networks:
|
||||
- name: "{{ docker_network_name }}"
|
||||
volumes:
|
||||
- "{{ data_dir }}/cobalt/keys.json:/keys.json:ro"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.cobalt.rule: Host(`dl.alexav.gg`)
|
||||
traefik.http.routers.cobalt.entrypoints: webSecure
|
||||
traefik.http.routers.cobalt.tls.certresolver: letsencrypt
|
||||
traefik.http.services.cobalt.loadbalancer.server.port: "9000"
|
||||
@@ -1,53 +0,0 @@
|
||||
---
|
||||
- name: Create folder structure
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_dir }}/gluetun"
|
||||
|
||||
- name: Pull latest Gluetun Docker Image
|
||||
docker_image:
|
||||
name: qmcgaw/gluetun
|
||||
tag: latest
|
||||
source: pull
|
||||
|
||||
- name: Deploy Gluetun Docker Container
|
||||
docker_container:
|
||||
name: gluetun
|
||||
image: qmcgaw/gluetun
|
||||
recreate: true
|
||||
capabilities:
|
||||
- NET_ADMIN
|
||||
devices:
|
||||
- /dev/net/tun:/dev/net/tun
|
||||
volumes:
|
||||
- "{{ data_dir }}/gluetun:/gluetun"
|
||||
networks:
|
||||
- name: homelab
|
||||
published_ports:
|
||||
- 8888:8888/tcp
|
||||
- 8388:8388/tcp
|
||||
- 8388:8388/udp
|
||||
env:
|
||||
VPN_SERVICE_PROVIDER: "{{ GLUETUN_VPN_SERVICE_PROVIDER }}"
|
||||
VPN_TYPE: "wireguard"
|
||||
WIREGUARD_PRIVATE_KEY: "{{ GLUETUN_WIREGUARD_PRIVATE_KEY }}"
|
||||
WIREGUARD_ADDRESSES: "{{ GLUETUN_WIREGUARD_ADDRESSES }}"
|
||||
SERVER_COUNTRIES: "{{ GLUETUN_SERVER_COUNTRIES }}"
|
||||
SERVER_CITIES: "{{ GLUETUN_SERVER_CITIES }}"
|
||||
SERVER_HOSTNAMES: "{{ GLUETUN_SERVER_HOSTNAMES }}"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
|
||||
traefik.http.routers.qbit.rule: Host(`qbit.fntz.net`)
|
||||
traefik.http.routers.qbit.service: qbit
|
||||
traefik.http.routers.qbit.entrypoints: webSecure
|
||||
traefik.http.routers.qbit.tls.certresolver: letsencrypt
|
||||
traefik.http.services.qbit.loadbalancer.server.port: "8090"
|
||||
|
||||
traefik.http.routers.jackett.rule: Host(`jackett.fntz.net`)
|
||||
traefik.http.routers.jackett.service: jackett
|
||||
traefik.http.routers.jackett.entrypoints: webSecure
|
||||
traefik.http.routers.jackett.tls.certresolver: letsencrypt
|
||||
traefik.http.services.jackett.loadbalancer.server.port: "9117"
|
||||
@@ -1,28 +0,0 @@
|
||||
---
|
||||
- name: Create folder structure
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_dir }}/jackett"
|
||||
|
||||
- name: Pull latest Jackett Docker Image
|
||||
docker_image:
|
||||
name: lscr.io/linuxserver/jackett
|
||||
tag: latest
|
||||
source: pull
|
||||
|
||||
- name: Deploy Jackett Docker Container
|
||||
docker_container:
|
||||
name: jackett
|
||||
image: lscr.io/linuxserver/jackett
|
||||
recreate: true
|
||||
restart_policy: unless-stopped
|
||||
network_mode: "container:gluetun"
|
||||
volumes:
|
||||
- "{{ data_dir }}/jackett:/config"
|
||||
- "{{ media_path}}/Downloads:/downloads"
|
||||
env:
|
||||
PUID: "{{ PUID }}"
|
||||
PGID: "{{ PGID }}"
|
||||
TZ: "{{ TZ }}"
|
||||
@@ -1,31 +0,0 @@
|
||||
---
|
||||
- name: Create folder structure
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_dir }}/navidrome"
|
||||
|
||||
- name: Pull latest Navidrome Docker Image
|
||||
docker_image:
|
||||
name: deluan/navidrome
|
||||
tag: latest
|
||||
source: pull
|
||||
|
||||
- name: Create Navidrome Docker Container
|
||||
docker_container:
|
||||
name: navidrome
|
||||
image: deluan/navidrome:latest
|
||||
restart_policy: unless-stopped
|
||||
recreate: true
|
||||
networks:
|
||||
- name: homelab
|
||||
volumes:
|
||||
- "{{ data_dir }}/navidrome:/data"
|
||||
- "{{ NAVIDROME_MUSIC_PATH }}:/music:ro"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.music.rule: Host(`music.fntz.net`)
|
||||
traefik.http.routers.music.entrypoints: webSecure
|
||||
traefik.http.routers.music.tls.certresolver: letsencrypt
|
||||
traefik.http.services.music.loadbalancer.server.port: "4533"
|
||||
@@ -1,21 +0,0 @@
|
||||
- name: Deploy Plex Webhook
|
||||
include_role:
|
||||
name: docker
|
||||
vars:
|
||||
name: plex-webhook
|
||||
image:
|
||||
name: git.alexav.gg/alex/plex-webhook
|
||||
tag: latest
|
||||
networks:
|
||||
- name: homelab
|
||||
env:
|
||||
DISCORD_WEBHOOK: "{{ PLEX_WEBHOOK_DISCORD_WEBHOOK }}"
|
||||
APPLICATION_TOKEN: "{{ PLEX_WEBHOOK_APPLICATION_TOKEN }}"
|
||||
PLEX_TOKEN: "{{ PLEX_WEBHOOK_PLEX_TOKEN }}"
|
||||
STORAGE_TOKEN: "{{ PLEX_WEBHOOK_STORAGE_TOKEN }}"
|
||||
labels:
|
||||
traefik.enable: "true"
|
||||
traefik.http.routers.plexwebhook.rule: Host(`plex-webhook.fntz.net`)
|
||||
traefik.http.routers.plexwebhook.entrypoints: webSecure
|
||||
traefik.http.routers.plexwebhook.tls.certresolver: letsencrypt
|
||||
traefik.http.services.plexwebhook.loadbalancer.server.port: "3000"
|
||||
@@ -1,26 +0,0 @@
|
||||
---
|
||||
- name: Create folder structure
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- "{{ data_dir }}/qbittorrent"
|
||||
|
||||
- name: Pull latest QBittorrent Docker Image
|
||||
docker_image:
|
||||
name: lscr.io/linuxserver/qbittorrent
|
||||
tag: latest
|
||||
source: pull
|
||||
|
||||
- name: Deploy QBittorrent Docker Container
|
||||
docker_container:
|
||||
name: qbittorrent
|
||||
image: lscr.io/linuxserver/qbittorrent
|
||||
network_mode: "container:gluetun"
|
||||
recreate: true
|
||||
env:
|
||||
PUID: "{{ PUID }}"
|
||||
PGID: "{{ PGID }}"
|
||||
TZ: "{{ TZ }}"
|
||||
WEBUI_PORT: "8090"
|
||||
TORRENTING_PORT: "6861"
|
||||
Reference in New Issue
Block a user