ansible-nas/roles/transmission-with-openvpn/tasks/main.yml
2021-01-13 15:19:47 +00:00

55 lines
2 KiB
YAML

---
- name: Create Transmission Directories
file:
path: "{{ item }}"
state: directory
# mode: 0755
with_items:
- "{{ transmission_config_directory }}"
- "{{ transmission_download_directory }}"
- "{{ transmission_watch_directory }}"
- name: Transmission with VPN
docker_container:
name: transmission-openvpn
image: haugene/transmission-openvpn
pull: true
volumes:
- "/etc/localtime:/etc/localtime:ro"
- "{{ transmission_download_directory }}:/downloads:rw"
- "{{ transmission_config_directory }}:/config:rw"
- "{{ transmission_watch_directory }}:/watch:rw"
- "/etc/timezone:/etc/timezone:ro"
ports:
- "{{ transmission_openvpn_webui_port }}:9091"
- "{{ transmission_openvpn_external_port }}:51413"
- "{{ transmission_openvpn_external_port }}:51413/udp"
- "{{ transmission_openvpn_proxy_port }}:3128"
env:
TRANSMISSION_HOME: "/config"
TRANSMISSION_DOWNLOAD_DIR: "/downloads"
TRANSMISSION_INCOMPLETE_DIR: "/downloads/.incomplete"
TRANSMISSION_WATCH_DIR: "/watch"
TRANSMISSION_RATIO_LIMIT: "{{ transmission_openvpn_ratio_limit }}"
TRANSMISSION_RATIO_LIMIT_ENABLED: "{{ transmission_openvpn_ratio_limit_enabled }}"
OPENVPN_PROVIDER: "{{ openvpn_provider }}"
OPENVPN_USERNAME: "{{ openvpn_username }}"
OPENVPN_PASSWORD: "{{ openvpn_password }}"
OPENVPN_CONFIG: "{{ openvpn_config }}"
WEBPROXY_ENABLED: "true"
WEBPROXY_PORT: "3128"
PUID: "{{ transmission_openvpn_user_id }}"
PGID: "{{ transmission_openvpn_group_id }}"
LOCAL_NETWORK: "{{ transmission_openvpn_local_network }}"
ENABLE_UFW: "false"
devices:
- /dev/net/tun
capabilities:
- NET_ADMIN
restart_policy: unless-stopped
memory: 1g
labels:
traefik.backend: "transmission-openvpn"
traefik.frontend.rule: "Host:transmission-openvpn.{{ ansible_nas_domain }}"
traefik.enable: "{{ transmission_with_openvpn_available_externally }}"
traefik.port: "9091"