我已在带有浮动IP的私有云VM(RHEL 7.2)上安装了docker 10.135.118.6
我也有一个与第三方数据库服务器通信的Java Play应用程序。该数据库已将浮动IP 10.135.118.6列入了白名单,以便我的Java Play应用可以与其建立连接。
现在,我希望对这个Java Play App进行docker化,但是在这样做的同时,使用默认的docker bridge映射了分配给docker容器的IP地址,其最终IP范围为172.17.0.2(动态IP)。
这给我造成了问题,因为我的新IP没有在数据库服务器上列入白名单,这最终使容器停止。
有什么方法可以将VM浮动IP分配给我的Docker吗? 容器而不是docker bridge网络IP?
答案 0 :(得分:0)
要实现这一目标:
首先,您可以使用自定义子网(例如JavaPlay_net)创建自己的docker网络
docker network create --subnet=172.32.0.0/16 JavaPlay_net
比简单地运行映像(例如ubuntu映像)
docker run --net JavaPlay_net --ip 172.32.0.22 -it ubuntu bash
然后在ubuntu shell中
hostname -i
您还可以使用
--hostname
指定主机名
--add-host
将更多条目添加到/ etc / hosts
创建Docker网络的参考:
https://docs.docker.com/engine/reference/commandline/network_create/#options