Docker Restarting: KARAF_ETC is not valid: /openhab/userdata/etc

Maybe I’m unreasonable, but when going through a set of instructions unless the steps are marked as optional I assume that they are mandatory. I don’t have to have each and every step labeled as mandatory. If there are none marked as optional, I assume that all steps are mandatory.

And in this case, the limitation isn’t one of openHAB, it’s a limitation of Docker. You cannot mount a folder that doesn’t exist on the host as a volume into a container. What you may be used to is Images where you only mount one folder as a volume into the container and the container creates the rest of the folders from that. That’s fairly common. But you cannot have a container that creates the root folder on the host on it’s own. It has to exist first!

It should be fine to copy in an existing config before the first run, but you have to copy your full config which means both conf and userdata. If you think that needs to be spelled out, there is a link at the bottom page where you can suggest edits to the instructions to make that more clear.

I run 13 containers from all different providers. There is no standard docker image behavior. Some make the folders, some do not. Some let you change the UID that it runs under, some do not.The OH image is pretty normal based on my experience. But anyone is more than welcome to improve the image if desired and able.

I don’t think you can call it a bug if it’s explicitly spelled out in the instructions. The root of the problem I think is assuming that the behaviors you have seen in other Docker images are standard and therefore making false assumptions about the instructions provided.

I suspect the developers will recategorize the issue as a feature request instead of a bug.

I just don’t get this. I mean, the OH docker image won’t make iced tea for you either. Do we need to document that? Is it a bug that it doesn’t do that?

That is definitely something worth filing an issue to correct. That I can see as a bug. But it’s also something that is pretty much understood by anyone with any experience using Docker. You can’t pass a non-existant folder on the host as a volume to the container.

Actually, ideally, the DockerHub instructions should be copied into the OH Official Docs. That was talked about at some point but I don’t know why it never happened.

OMV provides a nice GUI for running Docker containers on it. OMV is an FOSS NAS system so this is kind of akin to running on QNAP or Synology.

But as with all such UIs (cough cough PaperUI cough cough) it works great until something goes wrong or you actually need to understand how the stuff under the UI works. Then the user is lost.

2 Likes