Univention Bugzilla – Bug 42970
Docker Apps have an unhandy init script default
Last modified: 2018-08-22 14:26:16 CEST
The default for the init script is /sbin/init. This works well for appbox images. But it does not for most others. In fact, even appbox images do not need this value, because it is the Entrypoint defined in the original Docker file. We need to get rid of this default value. It just makes providing Docker Apps more difficult without adding anything. Unfortunately, we need to adjust RequiredUCSVersion for those Apps to the errata level of this very bug, because otherwise the old default value is still used. Also, the init script may be shipped along with the App, just like a join script. This does not make sense. The script cannot be copied to the container before the container is started. We have to work with what is inside the container.
(In reply to Dirk Wiesenthal from comment #0) > Also, the init script may be shipped along with the App, just like a join > script. This does not make sense. The script cannot be copied to the > container before the container is started. We have to work with what is > inside the container. Alternatively, we may keep the functionality and mount the shipped script into the container. But this requires a dedicated place for this script. The App Center needs to copy the script into, say, /usr/share/univention-appcenter/apps/init/$appid/. ini: DockerScriptInit=/opt/bin/ucs/init DockerVolumes=/usr/share/univention-appcenter/apps/init/$appid/:/opt/bin/ucs/
I'm trying to setup prometheus as a docker app using the container from docker hub. It seems that /sbin/init is added as command line option to the already defined Entrypoint. Prometheus doesn't like that and crashes... The self service should have an option to set that as an empty value.
I've also tried to add a docker image and this was my first blocker. I've switched the view to the ISV into the value for "How will those affected feel about the bug?".
*** Bug 45113 has been marked as a duplicate of this bug. ***
Fixed in univention-appcenter 7.0.2-11A~4.3.0.201807211346 The init value is deleted without replacement. We always use the CMD initially specified in the Dockerfile.
as discussed, please revert the change, make the DockerScriptInit optional with no default and edit the provider portal description (command not entrypoint).
Done in univention-appcenter 7.0.2-13A~4.3.0.201807271026
FAIL - yaml please change the description in the yaml file, DockerScriptInit has no longer a default but can be set OK - provider portal description OK - DockerScriptInit has no longer a default, but is used as docker CMD if set
(In reply to Felix Botner from comment #8) > FAIL - yaml > please change the description in the yaml file, DockerScriptInit has no > longer a default but can be set Done
OK
<http://errata.software-univention.de/ucs/4.3/211.html>