Install Steps
Installation
Section titled “Installation”-
Install Ansible for your system by following the instructions available here: https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html
-
Install requirements:
Terminal window sudo apt install git make python3-pip -y -
Clone the repository:
Terminal window git clone https://github.com/ahembree/ansible-hms-docker.git -
Go into the project folder:
Terminal window cd ansible-hms-docker/ -
Copy the default configuration files:
Terminal window make config -
Optional If you will be installing to a remote host that is not the system you just cloned the repo to, see the Remote Host Install docs
Container Selection
Section titled “Container Selection”To select the containers you want to use:
-
Modify the
inventory/group_vars/all/container_map.ymlfile -
Within there, you will find a giant list of the available containers and their config items
-
To enable a container, set its
enabledvalue totrueoryes
For an example of a container map entry and the description of what each setting does, check the Container List docs
Service Configuration
Section titled “Service Configuration”All configuration options are in a (hopefully) aptly-named .yml file.
Required Settings
Section titled “Required Settings”General
Section titled “General”-
Modify
inventory/group_vars/all/main.ymlto set the following variables -
hms_docker_domain: the local domain name of the server to be used for proxy rules and (if enabled) SSL certificates (e.g.home.local) -
hms_docker_media_share_type: the type of network share (cifs,nfs,local)- See the NAS setup page if using
nfsorcifs nfsif using an NFS share/mountcifsif using Samba or a Windows file sharelocalif using a local drive/directory on the same system
- See the NAS setup page if using
-
hms_docker_mount_path: This is where the media and download folders will be “mounted” to the host. Recommended to change if using a network share and/or other drive in the system. This will mount to/datawithin the containers. -
Plex If you have Plex enabled:
- Modify
inventory/group_vars/all/plex.ymland set: plex_claim_token: your Plex claim code from Plex’s website
- Modify
-
VPN Download Client If torrent download clients are enabled, see the Download Clients and VPNs documentation for the required variables
-
SSL/TLS Certificate If you want a SSL/TLS certificate for Traefik, see the SSL Certificates docs.
Running the playbook
Section titled “Running the playbook”You can run the playbook using the following commands:
# Run in "Check mode" to see changes before they are madesudo make check
# Apply changessudo make applyDebug mode
Section titled “Debug mode”There is a debug_mode you can control from a variable in hms-docker.yml
Where Data is Stored
Section titled “Where Data is Stored”See the File Layout documentation for info on where data is stored.
Next Steps
Section titled “Next Steps”Check out Configuring DNS on how to setup the DNS records on a (recommended) internal DNS server.
This will allow you to access the containers by going to https://<container>.<domain> in a browser and serve the SSL certificate, if enabled.
If you already have DNS enabled and want to get up and running quicker, check out the Automatic App Initialization.
If you are receiving a 404 or 5XX error when attempting to access the service, this is either because the container is not running, failing to start, or still starting. To troubleshoot, run docker logs -f <container name> and check the container logs.
Or, if you have Portainer enabled, you can also check the container logs there.