--- - 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_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_user_id }}" PGID: "{{ transmission_group_id }}" LOCAL_NETWORK: "{{ transmission_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"