docker網(wǎng)卡的IP地址修改方法總結(jié)
前言
Docker容器啟動后,默認會在主機上分配一個網(wǎng)卡,該網(wǎng)卡對應一個網(wǎng)絡(luò)命名空間,并在這個網(wǎng)絡(luò)命名空間下隨機分配一個IP地址。
如果想修改Docker容器的IP地址,有以下幾種方法:
1. 修改Docker宿主機的Docker網(wǎng)絡(luò)
可以在Docker主機上修改/etc/docker/daemon.json
文件,添加如下內(nèi)容:
{ "bip": "192.168.1.5/24", }
這會將Docker容器分配IP的子網(wǎng)修改為192.168.1.0/24
,并且默認網(wǎng)關(guān)設(shè)置為192.168.1.1
。
重啟Docker后生效,此后創(chuàng)建的容器會在此子網(wǎng)分配IP。
2. 啟動容器時指定IP
使用--ip
參數(shù)可以指定容器的IP地址:
docker run -it --ip 192.168.1.10 ubuntu:18.04
這會強制分配192.168.1.10
這個IP給新啟動的容器。
3. 啟動容器后修改IP
可以在啟動容器后,直接修改容器內(nèi)的網(wǎng)絡(luò)配置來變更IP地址。
首先,要定位到容器的網(wǎng)絡(luò)命名空間??梢允褂?
docker inspect 容器id|name # 查看"NetworkSettings"下的"SandboxKey"值
然后使用ip netns exec
命令進入該網(wǎng)絡(luò)命名空間:
sudo ip netns exec 沙盒KEY /bin/bash
在該命名空間下修改網(wǎng)絡(luò)配置即可。例如:
ip addr add 192.168.1.15/24 dev eth0 ip link set eth0 up
這會將eth0網(wǎng)卡的IP設(shè)置為192.168.1.15
。
退出后容器的IP就已經(jīng)修改。
需要注意,如果容器已經(jīng)把舊IP寫入到其它容器或者宿主機的配置(例如/etc/resolv.conf
)中,那么還需要相應修改那些地方的配置,否則可能出現(xiàn)網(wǎng)絡(luò)異常的情況。
以上是修改Docker容器IP地址的幾種常用方法。根據(jù)實際場景選擇適用的方案即可。
總結(jié)
到此這篇關(guān)于docker網(wǎng)卡的IP地址修改方法的文章就介紹到這了,更多相關(guān)docker網(wǎng)卡IP地址修改內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何在 Ubuntu 下通過 Docker 部署 Caddy 
本文介紹了如何在Ubuntu系統(tǒng)下通過Docker部署Caddy服務器,首先安裝Docker,然后啟動Docker服務并設(shè)置為開機自啟,接著拉取Caddy鏡像,并創(chuàng)建一個Caddyfile配置文件,使用命令運行Caddy容器,并將本地的Caddyfile掛載到容器內(nèi),感興趣的朋友跟隨小編一起看看吧2025-03-03Docker 手動配置容器網(wǎng)絡(luò)實例詳解
這篇文章主要介紹了Docker 手動配置容器網(wǎng)絡(luò)實例詳解的相關(guān)資料,這里有具體實現(xiàn),需要的朋友可以參考下2016-11-11docker: invalid reference format.問題
這篇文章主要介紹了docker: invalid reference format.問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01docker發(fā)布sunnyNgrok實現(xiàn)內(nèi)外網(wǎng)穿透的方法(容器內(nèi)執(zhí)行命令)
這篇文章主要介紹了docker上發(fā)布 sunnyNgrok 實現(xiàn)內(nèi)外網(wǎng)穿透,容器內(nèi)執(zhí)行命令,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03