Ich möchte ein Docker-Image für das Linkurious- Projekt auf github erstellen, für dessen Ausführung sowohl die Neo4j-Datenbank als auch Node.js erforderlich sind.
Mein erster Ansatz war, ein Basis-Image für mein Image zu deklarieren, das Neo4j enthält. Die Referenzdokumente definieren "Basisbild" nicht auf hilfreiche Weise:
Basisbild: Ein Bild ohne übergeordnetes Element ist ein Basisbild
von dem ich gelesen habe, dass ich möglicherweise nur ein Basisbild habe, wenn dieses Bild selbst kein Basisbild hat.
aber was ist ein Grundbild? Bedeutet dies, dass, wenn ich neo4j / neo4j in einer FROM-Direktive deklariere, die neo-Datenbank automatisch ausgeführt wird und im Container auf Port 7474 verfügbar ist, wenn mein Image ausgeführt wird?
Lesen der Docker-Referenz (siehe: https://docs.docker.com/reference/builder/#from ) Ich sehe:
FROM kann in einer einzelnen Docker-Datei mehrmals angezeigt werden, um mehrere Bilder zu erstellen. Notieren Sie sich einfach die letzte vom Commit ausgegebene Bild-ID vor jedem neuen FROM-Befehl.
möchte ich mehrere Bilder erstellen? Ich möchte anscheinend ein einzelnes Bild haben, das den Inhalt anderer Bilder enthält, z. B. neo4j und node.js.
Ich habe im Referenzhandbuch keine Anweisung gefunden, Abhängigkeiten zu deklarieren. Gibt es keine Abhängigkeiten wie in RPM, bei denen der aufrufende Kontext zum Ausführen meines Images zuerst die benötigten Images installieren muss?
Ich bin verwirrt...
FROM
in einemDockerfile
. Siehe meine bearbeitete Antwort unten.