2014-07-09 6 views
5

Ich habe einen Cluster von Cores-Maschinen. Ich führe die Datenbank auf einem Container in einem der Hosts aus und ich führe den Anwendungsserver auf einem anderen Container in einem anderen Host aus. Da sich die beiden Container nicht auf demselben Host befinden, kann ich den Befehl 'docker link' nicht verwenden, um diese Container miteinander zu verknüpfen. Daher frage ich mich, wie man den Webserver am besten über die IP-Adresse des Datenbankservers informiert.Verknüpfen eines Dockercontainers mit einem Anwendungsserver und eines Datenbankcontainers auf dem Cores-Cluster

Antwort

3

Das klingt nach einem guten Kandidaten für das Botschaftermuster. In wenigen Worten: Die Idee besteht darin, lokale Botschafter-Container zu erstellen, mit denen verlinkt werden soll, und sie mit der Verantwortung zu belassen, die "Remote-Links" mit den anderen Hosts zu erstellen. Ziel ist es, zu vermeiden, dass die Remote-Hosts in Ihren Anwendungscontainern explizit bekannt sind.

Hier sind einige Ressourcen zu diesem Thema:

+0

Ja ich beigetragen haben, über diese während kommen meine eigene Forschung zu tun. Ich denke, dass ich mehr darüber lesen muss. Aber wie auch immer, was ist los mit dem Schreiben der Datenbank-IP-Adresse und Port zu etcd, und dann diese Informationen als Umgebungsvariablen an den Appserver-Container übergeben. – Keeto

+1

Das Schreiben der IP und des Anschlusses auf etcd ist wahrscheinlich am einfachsten, um aufzustehen und zu laufen. – Rob