Difference between revisions of "Non-Docker Apps"
From Univention Wiki
Revision as of 10:20, 11 October 2016
The App Center supports Non-Docker Apps as well. These are Apps that are not run in a container but instead are installed directly on the Host system. The mechanism is similar to that of package based Docker Apps, except that the packages are not installed in a container. See App_Center/Dev/Docker_Apps_-_Package_based_Apps.
Just like package based Docker Apps, non-Docker Apps are essentially Debian packages.
Non-Docker Apps can integrate into the system more deeply than a Docker App could. No interfaces are needed, files can be installed directly on the host.
- That being said, providing a Non-Docker App is strongly discouraged, unless direct access to the host is absolutely necessary for your App to function. If you are missing an interface from your Docker Container to the host, talk to us. We may find a solution that lets you keep the Docker approach.
Examples for Apps that may be shipped as Non-Docker Apps include providing a Kernel module or extending our PAM stack. Note that this list shrinks rather than grows as we improve our Docker integration.
We are supporting Non-Docker Apps also for legacy Apps that were released prior to UCS 4.1. But as development of the App Center will focus on Docker Apps, we recommend to migrate your Apps (see ???). See also App_Center/Dev/Docker_Apps#Why_Docker.3F why we prefer package based Docker Apps rather than Non-Docker Apps.
The life cycle of a Non-Docker App is basically the life cycle of the Debian packages. The packages are installed and removed (not purged) via APT upon installation and uninstallation of the App.
A repository containing the packages is added to the Host before installation.
A new App version is installed by removing the original repository and adding a new one, followed by (something similar to) an apt-get dist-upgrade.