dockernetworking:如何知道哪个IP将被分配?

试图与docker工熟悉,所以请忍受我…

如果我创build一个端口为5432的数据库容器(psql),然后创build另一个想要在5432上连接的Web应用程序,他们将从docker分配桥网上的一些IP地址…

可能分别是172.0.0.1172.0.0.2 。 如果我启动了集装箱,用docker network inspect <bridge id>他们的ip docker network inspect <bridge id>

如果我然后采取这些ips,并在我的webapp设置插入端口,一切正常工作…

但我不应该运行我的web应用程序,shell程序,更改设置,然后运行一个服务器,我应该能够运行容器…

那么我在这里错过了什么,有没有办法让这两个容器联网而不必完成所有这些?

使用Dockernetworking

 docker create network myapp docker run --network myapp --name db [first-container...] docker run --network myapp --name webapp [second-container...] # ... and so on 

现在,您可以从其他容器中通过名称来引用容器。 就像他们在DNS中的主机名一样。

webapp应用程序容器中运行的应用程序中,可以使用dbconfiguration数据库服务器,就好像它是一个主机名。