最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker中設(shè)置靜態(tài)IP地址方式

 更新時(shí)間:2025年07月22日 14:33:52   作者:深山技術(shù)宅  
本文介紹了Docker容器設(shè)置靜態(tài)IP的四種方法,包括自定義bridge網(wǎng)絡(luò)(推薦)、macvlan網(wǎng)絡(luò)(物理IP接入)、docker-compose配置及修改現(xiàn)有容器,涵蓋IP沖突解決、云環(huán)境適配等注意事項(xiàng),并對(duì)比靜態(tài)與動(dòng)態(tài)IP的優(yōu)缺點(diǎn),提供最佳實(shí)踐建議

Docker容器設(shè)置靜態(tài)IP地址

在Docker中為容器分配靜態(tài)IP地址有多種方法,以下是詳細(xì)的解決方案:

方法一:使用自定義bridge網(wǎng)絡(luò)(推薦)

這是最常用的靜態(tài)IP分配方式,適用于大多數(shù)場(chǎng)景:

# 1. 創(chuàng)建自定義網(wǎng)絡(luò)
docker network create \
  --driver=bridge \
  --subnet=172.20.0.0/16 \
  --gateway=172.20.0.1 \
  --ip-range=172.20.5.0/24 \
  my-static-net

# 2. 運(yùn)行容器并分配靜態(tài)IP
docker run -d --name web-server \
  --network my-static-net \
  --ip 172.20.5.10 \
  nginx:alpine

# 3. 驗(yàn)證IP分配
docker exec web-server ip addr show eth0

方法二:使用macvlan網(wǎng)絡(luò)(容器獲取物理網(wǎng)絡(luò)IP)

當(dāng)容器需要直接接入物理網(wǎng)絡(luò)時(shí):

# 1. 創(chuàng)建macvlan網(wǎng)絡(luò)
docker network create -d macvlan \
  --subnet=192.168.1.0/24 \
  --gateway=192.168.1.1 \
  --ip-range=192.168.1.100/28 \
  -o parent=eth0 \
  macvlan-static

# 2. 運(yùn)行容器并分配靜態(tài)IP
docker run -d --name network-app \
  --network macvlan-static \
  --ip=192.168.1.101 \
  nginx:alpine

方法三:使用docker-compose配置靜態(tài)IP

適用于docker-compose部署場(chǎng)景:

version: '3.7'

services:
  web:
    image: nginx:alpine
    networks:
      static-net:
        ipv4_address: 172.22.0.10

  db:
    image: postgres:13
    networks:
      static-net:
        ipv4_address: 172.22.0.20

networks:
  static-net:
    driver: bridge
    ipam:
      config:
        - subnet: 172.22.0.0/24
          gateway: 172.22.0.1

啟動(dòng)服務(wù):

docker-compose up -d

方法四:修改現(xiàn)有容器的IP地址

修改已運(yùn)行容器的IP需要重新創(chuàng)建容器:

# 1. 停止并刪除容器
docker stop my-container && docker rm my-container

# 2. 創(chuàng)建自定義網(wǎng)絡(luò)(如果尚未創(chuàng)建)
docker network create --subnet=10.5.0.0/16 custom-net

# 3. 使用新IP重新運(yùn)行容器
docker run -d --name my-container \
  --network custom-net \
  --ip 10.5.0.100 \
  nginx:alpine

驗(yàn)證靜態(tài)IP配置

# 檢查容器IP
docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' web-server

# 進(jìn)入容器測(cè)試網(wǎng)絡(luò)
docker exec -it web-server sh
ping 8.8.8.8

注意事項(xiàng)及常見(jiàn)問(wèn)題解決

IP地址沖突

  • 解決方案:使用--ip-range限制可用IP范圍
  • 檢查IP是否可用:ping <目標(biāo)IP>

默認(rèn)bridge網(wǎng)絡(luò)不支持靜態(tài)IP

  • 必須創(chuàng)建自定義網(wǎng)絡(luò)

macvlan網(wǎng)絡(luò)宿主機(jī)無(wú)法訪問(wèn)容器

sudo ip link add host-macvlan link eth0 type macvlan mode bridge
sudo ip addr add 192.168.1.99/24 dev host-macvlan
sudo ip link set host-macvlan up
  • 解決方法:創(chuàng)建macvlan接口

云環(huán)境限制問(wèn)題

docker network create -d ipvlan \
  --subnet=192.168.1.0/24 \
  --gateway=192.168.1.1 \
  -o parent=eth0 \
  -o ipvlan_mode=l2 \
  ipvlan-net
  • 解決方案:改用ipvlan模式

靜態(tài)IP與動(dòng)態(tài)IP對(duì)比

特性靜態(tài)IP動(dòng)態(tài)IP
地址穩(wěn)定性永久固定容器重啟可能改變
網(wǎng)絡(luò)配置需要手動(dòng)管理自動(dòng)分配
適用場(chǎng)景服務(wù)發(fā)現(xiàn)、固定端點(diǎn)的應(yīng)用臨時(shí)性、無(wú)狀態(tài)應(yīng)用
容器間通信可直接通過(guò)IP訪問(wèn)需要通過(guò)容器名或服務(wù)名

最佳實(shí)踐建議

使用自定義DNS名稱替代IP

docker run -d --name service1 --network my-net nginx
docker run -d --name service2 --network my-net alpine ping service1

結(jié)合端口映射使用

docker run -d --name web \
  --network my-static-net \
  --ip 172.20.5.10 \
  -p 8080:80 \
  nginx:alpine

多容器網(wǎng)絡(luò)配置

docker network create app-network --subnet=10.1.0.0/24

docker run -d --name db \
  --network app-network \
  --ip 10.1.0.100 \
  postgres

docker run -d --name app \
  --network app-network \
  --ip 10.1.0.101 \
  -e DB_HOST=10.1.0.100 \
  my-app-image

通過(guò)以上方法,您可以根據(jù)實(shí)際需求為Docker容器配置靜態(tài)IP地址,確保網(wǎng)絡(luò)配置的穩(wěn)定性和可預(yù)測(cè)性。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • docker安裝nginx并配置通過(guò)https訪問(wèn)的方法

    docker安裝nginx并配置通過(guò)https訪問(wèn)的方法

    這篇文章主要介紹了docker安裝nginx并配置通過(guò)https訪問(wèn)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Docker?安裝?Consul單機(jī)模式的操作方法

    Docker?安裝?Consul單機(jī)模式的操作方法

    這篇文章主要介紹了Docker?安裝?Consul單機(jī)模式,本文給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • Docker利用busybox創(chuàng)建基礎(chǔ)鏡像(base image)

    Docker利用busybox創(chuàng)建基礎(chǔ)鏡像(base image)

    今天小編就為大家分享一篇關(guān)于Docker利用busybox創(chuàng)建基礎(chǔ)鏡像(base image),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12
  • Docker核心命令與實(shí)踐指南示例詳解

    Docker核心命令與實(shí)踐指南示例詳解

    本文系統(tǒng)整理Docker的核心概念與常用命令,涵蓋鏡像管理、容器操作、數(shù)據(jù)存儲(chǔ)、網(wǎng)絡(luò)配置、Compose 編排以及 Dockerfile 構(gòu)建等內(nèi)容,感興趣的朋友跟隨小編一起看看吧
    2025-06-06
  • windows下安裝docker的教程詳解

    windows下安裝docker的教程詳解

    這篇文章主要介紹了windows安裝docker的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Dockerfile中multi-stage(多階段構(gòu)建)詳解

    Dockerfile中multi-stage(多階段構(gòu)建)詳解

    在2017年5月3日即將發(fā)行的 Docker 17.05.0-ce 中,Docker 官方提供了簡(jiǎn)便的多階段構(gòu)建 (multi-stage build) 方案,下面這篇文章主要給大家介紹了關(guān)于Dockerfile中multi-stage(多階段構(gòu)建)的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • 將博客遷移至docker紀(jì)實(shí)

    將博客遷移至docker紀(jì)實(shí)

    作者個(gè)人博客一直是跑在阿里云主機(jī)上的,最近接觸了docker 心血來(lái)潮想把自己的應(yīng)用打包到docker容器中去,方便以后的遷移部署,這里把經(jīng)驗(yàn)給大家總結(jié)分享下
    2017-05-05
  • Docker安裝beef-xss的步驟

    Docker安裝beef-xss的步驟

    這篇文章主要介紹了Docker安裝beef-xss的步驟,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2025-04-04
  • Docker制作MySQL鏡像并使用`/docker-entrypoint-initdb.d/`問(wèn)題

    Docker制作MySQL鏡像并使用`/docker-entrypoint-initdb.d/`問(wèn)題

    這篇文章主要介紹了Docker制作MySQL鏡像并使用`/docker-entrypoint-initdb.d/`問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Docker的徹底刪除與重新安裝完整步驟(ubuntu22.04)

    Docker的徹底刪除與重新安裝完整步驟(ubuntu22.04)

    Docker是一種輕量級(jí)的容器化平臺(tái),可以幫助開(kāi)發(fā)人員將應(yīng)用程序及其依賴項(xiàng)打包成一個(gè)可移植的容器,這篇文章主要介紹了Docker的徹底刪除與重新安裝完整步驟的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03

最新評(píng)論

石城县| 日土县| 嘉兴市| 嘉兴市| 河东区| 西城区| 辉县市| 天气| 汝州市| 崇礼县| 湖州市| 武胜县| 靖边县| 通辽市| 镇坪县| 昆山市| 蒙山县| 荣昌县| 历史| 晋州市| 灵山县| 博罗县| 湖口县| 怀集县| 北海市| 岳西县| 高邮市| 晋城| 辛集市| 灌阳县| 利辛县| 洛扎县| 平塘县| 浙江省| 青州市| 合水县| 昌乐县| 皋兰县| 明水县| 沧州市| 湖口县|