--- ## ._____. .__ ## _____ ____ _____|__\_ |__ | | ____ ____ _____ ______ ## \__ \ / \ / ___/ || __ \| | _/ __ \ ______ / \\__ \ / ___/ ## / __ \| | \\___ \| || \_\ \ |_\ ___/ /_____/ | | \/ __ \_\___ \ ## (____ /___| /____ >__||___ /____/\___ > |___| (____ /____ > ## \/ \/ \/ \/ \/ \/ \/ \/ ## a n s i b l e - n a s https://github.com/davestephens/ansible-nas ### ### DO NOT EDIT THIS FILE! ### Add your customisations to inventories//group_vars/nas.yml ### ### ### Ansible-NAS Applications ### # Media Sourcing jellyfin_enabled: false youtubedlmaterial_enabled: false # System Management stats_enabled: false guacamole_enabled: false virtual_desktop_enabled: false krusader_enabled: false # Backup & Restore timemachine_enabled: false # IRC thelounge_enabled: false # Wallabag wallabag_enabled: false # Home Automation mosquitto_enabled: false openhab_enabled: false # Books calibre_enabled: false # Ubooquity ubooquity_enabled: false # Joomla joomla_enabled: false # PyTivo pytivo_enabled: false ### ### General ### # Will be added to the docker group to give user command line access to docker ansible_nas_user: david # Your email and domain, used for Let's Encrypt SSL certs ansible_nas_email: me@example.com # Applications will have subdomain SSL certificates created if Traefik is enabled, e.g. ansible-nas., nextcloud. ansible_nas_domain: example.com # What version of python ansible should use on target system (path to spesific binary) ansible_python_interpreter: /usr/bin/python3 ### ### Samba ### # The location where all shares will be created by default. Can be overridden on a per-share basis. # This path will be mounted to backup containers, Duplicati samba_shares_root: /mnt/Volume3 # Where stuff downloaded will be stored downloads_root: "{{ samba_shares_root }}/downloads" # Where your movies are stored movies_root: "{{ samba_shares_root }}/movies" # Where your TV episodes are stored tv_root: "{{ samba_shares_root }}/tv" # Where torrent files are stored (picked up by Transmission for downloading) torrents_root: "{{ samba_shares_root }}/torrents" # Where music is stored music_root: "{{ samba_shares_root }}/music" # Where podcasts are stored podcasts_root: "{{ samba_shares_root }}/podcasts" # Where your books are stored books_root: "{{ samba_shares_root }}/books" # Where your audiobooks are stored audiobooks_root: "{{ samba_shares_root }}/audiobooks" # Where your comics are stored comics_root: "{{ samba_shares_root }}/comics" # Where photos are stored photos_root: "{{ samba_shares_root }}/photos" # Where paperless_ng consumes documents documents_root: "{{ samba_shares_root }}/documents" # The description that'll appear next to your Ansible-NAS box when browsing your network samba_server_string: Ansible NAS # Shares you want published over Samba. samba_shares: - name: downloads comment: 'Stuff downloaded' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ downloads_root }}" - name: movies comment: 'Movies' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ movies_root }}" - name: tv comment: 'TV Episodes' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ tv_root }}" - name: music comment: 'Music' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ music_root }}" - name: podcasts comment: 'Podcasts' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ podcasts_root }}" - name: dump comment: 'File dump' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ samba_shares_root }}/dump" - name: games comment: 'Games' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ samba_shares_root }}/games" - name: photos comment: 'Pictures' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ photos_root }}" - name: books comment: 'Books' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ books_root }}" - name: audiobooks comment: 'Audiobooks' guest_ok: yes public: yes writable: yes browsable: yes path: "{{ samba_shares_root }}/audiobooks" - name: comics comment: 'Comics' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ comics_root }}" - name: documents comment: 'Documents' guest_ok: yes public: yes writable: yes browseable: yes path: "{{ documents_root }}" ### ### NFS ### # Data you want published over NFS. More info on the NFS config format can be found at # https://help.ubuntu.com/community/SettingUpNFSHowTo#Shares # WARNING: Weird things might happen if you share the same data over Samba and NFS and allow writes on both! nfs_shares_root: /mnt/Volume3 nfs_exports: - "{{ nfs_shares_root }}/public *(rw,sync,no_root_squash)" ### ### Samba ### # Seems to break browsing of the \\server-name shares root when enabled samba_mitigate_cve_2017_7494: false # Enable apple exentensions for compatibility with apple clients samba_apple_extensions: yes # The account used when Samba shares are accessed. Shouldn't need to change this unless you want to # mess with Samba user permissions. samba_guest_account: ansible-nas # How Samba behaves when an unknown user connects, see Samba docs for more info samba_map_to_guest: Bad Password # The NetBIOS hostname used by Samba on your network samba_netbios_name: "{{ ansible_nas_hostname }}" ### ### Joomla ### joomla_data_directory: "{{ docker_home }}/joomla" joomla_available_externally: "false" joomla_database_password: top_secret joomla_port: "8181" ### ### PyTivo ### pytivo_available_externally: "false" pytivo_config_directory: "{{ docker_home }}/pytivo/config" pytivo_movies_directory: "{{ movies_root }}" pytivo_tv_directory: "{{ tv_root }}" pytivo_photos_directory: "{{ photos_root }}" pytivo_music_directory: "{{ music_root }}" pytivo_podcasts_directory: "{{ podcasts_root }}" pytivo_user_id: "0" pytivo_group_id: "0" ### ### YouTubeDL-Material ### youtubedlmaterial_available_externally: "false" youtubedlmaterial_data_directory: "{{ docker_home }}/youtubedlmaterial" youtubedlmaterial_dl_audio_directory: "{{ downloads_root }}/youtube/audio" youtubedlmaterial_dl_video_directory: "{{ downloads_root }}/youtube/video" youtubedlmaterial_dl_subscriptions_directory: "{{ downloads_root }}/youtube/subscriptions" youtubedlmaterial_port_http: "8998" ### ### OpenVPN ### openvpn_config_directory: "{{ docker_home }}/openvpn" ### ### Stats ### grafana_available_externally: "false" telegraf_data_directory: "{{ docker_home }}/telegraf" influxdb_data_directory: "{{ docker_home }}/influxdb" grafana_data_directory: "{{ docker_home }}/grafana" stat_collection_interval: 15s grafana_influxdb_port: "8086" grafana_port: "3000" ### ### Guacamole ### guacamole_available_externally: "false" guacamole_data_directory: "{{ docker_home }}/guacamole" guacamole_port: "8090" ### ### Krusader ### krusader_available_externally: "false" krusader_config_directory: "{{ docker_home }}/krusader/config" krusader_browse_directory: "/" krusader_user_id: "0" krusader_group_id: "0" krusader_secure_connection: "0" krusader_vnc_password: "topsecret" krusader_port_http: "5800" krusader_port_vnc: "5900" ### ### Time Machine ### timemachine_data_directory: "{{ docker_home }}/timemachine" timemachine_volume_size_limit: "0" timemachine_password: timemachine timemachine_share_name: Data timemachine_log_level: error timemachine_port: "10445" ### ### The Lounge ### thelounge_available_externally: "false" thelounge_data_directory: "{{ docker_home }}/thelounge" thelounge_port_one: "113" thelounge_port_two: "9002" ### ### Wallabag ### wallabag_available_externally: "false" wallabag_data_directory: "{{ docker_home }}/wallabag" wallabag_port: "7780" ### ### Mosquitto ### mosquitto_available_externally: "false" mosquitto_data_directory: "{{ docker_home }}/mosquitto" mosquitto_port_a: "1883" mosquitto_port_b: "9001" ### ### Calibre-web ### calibre_available_externally: "false" calibre_data_directory: "{{ docker_home }}/calibre" calibre_user_id: "0" calibre_group_id: "0" calibre_books_root: "{{ books_root }}" calibre_port: "8084" # To disable ebook conversion set calibre_ebook_conversion to "". To enable it set it to "linuxserver/calibre-web:calibre" calibre_ebook_conversion: "linuxserver/calibre-web:calibre" ### ### openHAB ### openhab_available_externally: "false" openhab_docker_image: openhab/openhab:latest openhab_data_directory: "{{ docker_home }}/openhab" openhab_port_http: "7777" openhab_port_https: "7778" ### ### Jellyfin ### # If you're paranoid, set permissions to "ro" so jellyfin won't ever be able to # delete your files jellyfin_available_externally: "false" jellyfin_config_directory: "{{ docker_home }}/jellyfin/config" jellyfin_movies_directory: "{{ movies_root }}" jellyfin_movies_permissions: "rw" jellyfin_music_directory: "{{ music_root }}" jellyfin_music_permissions: "rw" jellyfin_photos_directory: "{{ photos_root }}" jellyfin_photos_permissions: "rw" jellyfin_tv_directory: "{{ tv_root }}" jellyfin_tv_permissions: "rw" jellyfin_books_directory: "{{ books_root }}" jellyfin_books_permissions: "rw" jellyfin_audiobooks_directory: "{{ audiobooks_root }}" jellyfin_audiobooks_permissions: "rw" jellyfin_user_id: "0" jellyfin_group_id: "0" jellyfin_port_http: "8896" jellyfin_port_https: "8928" ### ### Ubooquity ### ubooquity_available_externally: "false" ubooquity_data_directory: "{{ docker_home }}/ubooquity" ubooquity_user_id: "0" ubooquity_group_id: "0" ubooquity_port_webui: "2202" ubooquity_port_admin: "2203" ### ### Virtual Desktop ### vd_data_directory: "{{ docker_home }}/virtual_desktop" vd_docker_image: "rattydave/docker-ubuntu-xrdp-mate-custom:20.04-tools" vd_users: - username: "{{ ansible_nas_user }}" password: "topsecret" sudo: "Y" vd_rdp_port: 3389