Announcement: AppDaemon v2.0.1, 2.0.2

The next few releases will focus on ease of installation - first up, docker. I have had some great help from @quadportnick, who contributed some enhancements and a docker tutorial. Docker images (for non-pi users) are now hosted on Docker hub for ease of installation, docker users have no need to download the repository any longer!

2.0.2

Features

  • Move docker image to python 3.6

Fixes

None

Breaking Changes

None

2.0.1

Features

  • Much Improved Docker support including tutorial - many thanks to quadportnick

Fixes

  • Version Change
  • Respect cert_path setting when connecting to WebSocket over SSL - contributed by yawor

Breaking Changes

None

3 Likes

Would you be open to keeping the appdaemon docker python base image version synced with the official homeassistant docker version (python:3.6)? It greatly minimizes the container sizes on someones system if they are both using the same base.

I’ve been running appdaemon on python 3.6 in my own docker images for a while now with no issues.

Hold my beer …

2 Likes

OK, I’m just about to release 2.0.2 - the docker image for that uses 3.6 and it should be up on Docker hub already

1 Like

2.0.2 is now live

1 Like

Awesome, thanks!

Also want to let anyone using my docker image “mezz64/appdaemon” that you should now switch to the official image “acockburn/appdaemon” to stay up to date. No changes are required to move to the official image other than pointing to the right repository.

1 Like

In the docker image the host port has 5050r you may want to check that out.

Also I’m getting this error when starting the container.

2017-07-09 18:40:39.231402 INFO Configuration read from: /conf/appdaemon.yaml
Traceback (most recent call last):
File "/usr/local/bin/appdaemon", line 11, in <module>
load_entry_point('appdaemon==2.0.2', 'console_scripts', 'appdaemon')()
File "/usr/local/lib/python3.6/site-packages/appdaemon/appdaemon.py", line 1747, in main
os.environ['TZ'] = conf.time_zone
File "/usr/local/lib/python3.6/os.py", line 674, in __setitem__
value = self.encodevalue(value)
File "/usr/local/lib/python3.6/os.py", line 742, in encode
raise TypeError("str expected, not %s" % type(value).__name__)
TypeError: str expected, not NoneType

Where did you see 5050r?

Also what is your command line for starting the image, and what does your appdaemon.yaml look like? Did you do the initial test as the tutorial said, and did it work ok?

I’m using unraid and their docker section so it automatically setup the image for me, I was previously using mezz64’s version without issue though it seems like its appended “r”'s on the ends of some things even the conf it has “confr” and certs "certsr directories, it may be an issue with unraid ill try play around with it some more and see if I can get it working.

Also this is the command that gets run by unraid when setting up the docker

oot@localhost:# /usr/local/emhttp/plugins/dynamix.docker.manager/scripts/docker run -d --name="appdaemon" --net="bridge" -e TZ="XXXXXX WITH MY TIMEZONE" -e HOST_OS="unRAID" -p 5050:5050/tcp -v "/mnt/user/Storage/Security/ha/":"/conf":rw -v "/mnt/user/Storage/Security/ha/certs/":"/certs":rw acockburn/appdaemon

Edit: If anyone else is using unraid and docker, just delete the ports and paths and then readd them as it seems that unraid it appending an r to the ones in this dockerfile.

if @mezz64 has any pointers about what he did differently with his image to make it run on uniraid I would be happy to incorporate them.

No changes should be needed between mine and the official one. The only real difference between the two is the official one automatically pulls in the configuration files to the mapped directory if needed, which mine did not do.

1 Like