Ich hatte ein ähnliches Problem. Ich wollte Image-Builds mit Hilfe von beschleunigen. Es läuft in einem eigenen Container und irgendwie mussten andere Bilder, die ich gebaut habe, damit kommunizieren.
Die Lösung war apt-cacher
Port auf allen Schnittstellen zu veröffentlichen. Dies beinhaltet z.B. docker0
, die für Zwischencontainer verfügbar ist, die während des Image-Builds erstellt wurden.
Beispiel Dockerfile
:
FROM debian:8
RUN ping -c 2 172.17.0.1
Und das ist, wie es baut:
$ docker build - <dock
Sending build context to Docker daemon 2.048 kB
Step 1 : FROM debian:8
---> 47af6ca8a14a
Step 2 : RUN ping -c 2 172.17.0.1
---> Running in 4f56ce7c7b63
PING 172.17.0.1 (172.17.0.1): 56 data bytes
64 bytes from 172.17.0.1: icmp_seq=0 ttl=64 time=0.117 ms
64 bytes from 172.17.0.1: icmp_seq=1 ttl=64 time=0.130 ms
--- 172.17.0.1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.117/0.123/0.130/0.000 ms
---> 5c73a36a0a6a
Removing intermediate container 4f56ce7c7b63
Was genau müssen Sie tun? Sie möchten ein Skript in Ihrer Datenbank ausführen? – Behe
@behe Art von. Ich muss zwei django-Verwaltungsbefehle ausführen, die die Datenbank für die Anwendung vorbereiten. Aber in einfachen Worten - ja, ich muss ein Skript für meine Datenbank ausführen. – syabro
Es ist möglich, Ihre Datenbank zu starten und sie beim Erstellen Ihres Bildes zu füllen. Es ist nicht möglich, Container auf Build zu verknüpfen. (Könnte dies ein sein: http://mywiki.wooledge.org/XyProblem) – Behe