So, the problem with the timezone not getting set is you need -t to provide the tty, to allow the environment variables. You can use -t with -d.
Also, a recent update made devices that are given access to the image, using the --device flag, can only be accessed by root. Since Pytomation runs as the pyto user, I added a DEVICES environment variable, to change the ownership of the devices it contains to be owned by pyto. This only affects the docker image, not the host device. It's a semi-colon separated list
Example docker command:
sudo docker run -td -p yourip:443:8080 --device=/dev/zwave --device=/dev/insteon --hostname=
pytomation.yourdomain.net --name=
pytomation.yourdomain.net -v /etc/pytomation:/secured -e "TZ=America/Los_Angeles" --restart unless-stopped -e "DEVICES=/dev/zwave;dev/insteon" dheaps/pytomation:dev
or for interactive, replace d with i:
sudo docker run -ti -p yourip:443:8080 --device=/dev/zwave
--device=/dev/insteon --hostname=
pytomation.yourdomain.net
--name=
pytomation.yourdomain.net -v /etc/pytomation:/secured -e
"TZ=America/Los_Angeles" --restart unless-stopped -e
"DEVICES=/dev/zwave;dev/insteon" dheaps/pytomation:dev
Remember, you can create additional IP addresses on your host machine, for the docker image to consume, like this (be sure the IP is on the same subnet):