如何将外部IP添加到docker集装箱?

所以一个星期以来我一直在研究docker和所有可用的选项。 我有一个VPS与3个额外的静态IP地址。

这个想法是将每个容器连接到不同的IP,或者可以添加3个不同容器的networking,每个networking连接到不同的IP。 我前几天看到一些互联网上的教程,但我没有保存他们,我找不到他们了。

IP是静态的,由我们的ISP(ovh)提供。

到目前为止,我试图连接到IP使用子网xx.xx.xx.xx / 32(只有1 IP),但它给了我错误谢谢

PS。 我是docker工人的新手

– 编辑 –

just tried this code docker network create \ --driver=bridge \ --subnet=AAA.BBB.CCC.DDD/32 \ --ip-range=AAA.BBB.CCC.DDD/32 \ --gateway=AAA.BBB.CCC.DDD \ br0 

我得到当前的错误

 Error response from daemon: failed to allocate gateway (AAA.BBB.CCC.DDD): No available addresses on this pool 

AAA.BBB.CCC.DDD代表来自ISP的公共IP

一个IP地址parsing到某个地方(如果你的DNS服务器能够解决它)在这种情况下,我假设静态IP的parsing到同一台机器:尝试通过运行

 Host xxx.xxx.xxx 

注意:使用ipv4地址,所以省略斜线如果返回相同的主机名,我的假设是正确的。

在这台主机上,每个容器必须暴露一个端口,并且不能使用同一个端口。 (每个应用程序一个端口)

所以你要么导航到一个IP后面跟着一个冒号和一个端口号…或者你可以省略端口,并有一个像Apache或Nginx的Web服务器监听默认端口(80),并configuration基于路由根据收到的请求。 (然后将其路由到单独暴露的端口,但这样客户端不必知道这些)

希望这给你一些指针来调查你的目标的选项。