Docker-Container haben normalerweise kein vollständiges Init-System und die Interaktion mit Upstart funktioniert nicht innerhalb eines Docker-Containers. (Theoretisch ist es möglich, aber es vereitelt den Zweck eines leichten Stapels)
Dies bedeutet, dass Sie einen Docker-Container starten, der einen einzelnen Befehl "/usr/bin/mongod"
ausführen würdeBeispiel für die Ausführung von mongodb in einem Docker-Container:https://docs.docker.com/samples /library/mongo/
Da Sie außerdem Installationsbefehle mit einem interaktiven Docker-Container ausführen, ist Ihr Shell-Interpreter der einzige Befehl, soweit Docker betrachtet wird. Sobald Sie sich in einer interaktiven Sitzung befinden, können Sie Mongod im Hintergrund ausführen (wie Sie es getan haben) und eine Mongo-Client-Sitzung starten.
Eine andere Möglichkeit wäre, diese Anweisungen als Teil von Dockerfile auszuführen . Sie können auf das Mongodb-Beispiel verweisen .
Vielleicht möchten Sie auch einige der offiziellen Mongo-DB-Images in Betracht ziehen, die bereits im Docker-Hub veröffentlicht wurden:
https://registry.hub.docker.com/_/mongo/