2017-07-20 2 views
0

Ich möchte eine PPA in einem Dockerfile-Build installieren. Das PPA enthält einen Aufruf für den Neustart, speziell das PPA-Skript postinst startet einen Dienst und führt danach eine andere Arbeit aus, die erfordert, dass der Dienst ausgeführt wird. Das Dockerfile-Build schlägt fehl, da der Dienst nicht gestartet wurde.Dockerfile-Erstellung schlägt fehl, da PPA Neustart erfordert

Was scheinbar geschieht, ist, dass Emporkömmling durch Docker/Moby ersetzt wird, so dass solche Anrufe nur als Einstiegspunkt ausgeführt werden können. Siehe: Running services (upstart/init.d) in a container

Eine mögliche Lösung ist die phusion/baseimage zu verwenden, aber die PPA erfordert Ubuntu 14.04 und Phusion bei Ubuntu gekoppelt 16.

Was bin ich?

Antwort

0

Docker ist nicht wirklich entworfen, um Upstart/Systemd-Dienste zu starten, es wurde entwickelt, um den Dienst direkt im Vordergrund zu starten.

Wenn Ihr Paket auf Upstart basiert, sollten Sie das Paket möglicherweise nicht verwenden, aber tun Sie eine manual installation in Ihrer Dockerfile.

+0

Prost. Tatsächlich. Danke für die schnelle und klare Antwort. FWIW, für dieses spezielle Paket müssen die manuellen Anweisungen aktualisiert werden, da sie unvollständig sind. – citizenrich

Verwandte Themen