在上一篇 《docker 網(wǎng)絡(luò)(host&none&bridge)》中蹬昌,我們介紹了docker自帶網(wǎng)絡(luò)的三種模式算灸。
其中提到過(guò)bridge(docker0)網(wǎng)絡(luò)由于是docker安裝時(shí)就創(chuàng)建的蛤吓,無(wú)法在創(chuàng)建容器的時(shí)候指定容器ip充活。
那么在實(shí)際部署中硼砰,我們需要指定容器ip且蓬,不允許其自行分配ip,防止容器ip混亂题翰。
有什么辦法可以在創(chuàng)建容器時(shí)指定容器ip呢恶阴?很簡(jiǎn)單,自己創(chuàng)建一個(gè)新的bridge網(wǎng)絡(luò)bridge1豹障,在創(chuàng)建bridge1的時(shí)候同時(shí)創(chuàng)建子網(wǎng)冯事,那么在創(chuàng)建容器的時(shí)候指定網(wǎng)絡(luò)為bridge1并指定ip即可。
光說(shuō)不練假把式血公,我們一起實(shí)戰(zhàn)吧j墙觥!累魔!
[root@cgls~ ]# docker network create --driver bridge --subnet=172.16.12.0/16 --gate=172.16.1.1 cgls
image
[root@cgls~ ]# docker network inspect cgls
image
好的摔笤,現(xiàn)在自定義的網(wǎng)絡(luò)已經(jīng)創(chuàng)建好了够滑,之后在創(chuàng)建容器的時(shí)候,我們就可以指定IP了籍茧。
[root@cgls~ ]# docker run -itd -h test --name test --network=cgls --ip 172.16.12.12 centos
此時(shí)指定的容器ip為172.16.12.12版述。
[root@cgls~ ]# docker run -itd -h test --name test --network=cgls centos
如果沒(méi)有指定容器ip,將會(huì)自動(dòng)分一個(gè)172.16.12.0/16網(wǎng)段內(nèi)的ip寞冯。
timg (1).jpg