Docker 如何分配宿主機網(wǎng)段 IP
工作需要臨時啟動一個 gitlab,無奈 gitlab 需要 ssh 的 22 端口;而使用傳統(tǒng)網(wǎng)橋方式映射端口則 clone 等都需要輸入端口號,很麻煩;22 端口宿主機又有 sshd 監(jiān)聽;研究了下 docker 網(wǎng)絡,記錄一下如何分配宿主機網(wǎng)段 IP
創(chuàng)建 macvlan 網(wǎng)絡
關于 Docker 網(wǎng)絡模式這里不再細說;由于默認的網(wǎng)橋方式無法滿足需要,所以需要創(chuàng)建一個 macvlan 網(wǎng)絡
docker network create -d macvlan --subnet=172.16.0.0/19 --gateway=172.16.0.1 -o parent=eth0 gitlab-net
- --subnet: 指定網(wǎng)段(宿主機)
- --gateway: 指定網(wǎng)關(宿主機)
- parent: 注定父網(wǎng)卡(宿主機)
創(chuàng)建以后可以使用 docker network ls 查看
~ docker network ls NETWORK ID NAME DRIVER SCOPE a4a2980c9165 agent_default bridge local a0f29102b413 bridge bridge local 2f46dc70b763 gitlab-net macvlan local 51bd6222530f host host local 7a14a09c3cfc none null local
創(chuàng)建使用容器
接下來創(chuàng)建容器指定網(wǎng)絡即可
docker run --net=gitlab-net --ip=172.16.0.170 -dt --name test centos:7
--net 指定使用的網(wǎng)絡,--ip 用于指定網(wǎng)段內(nèi) IP;啟動后只需要在容器內(nèi)啟動程序測試即可
# 啟動一個 nginx yum install nginx nginx
啟動后在局域網(wǎng)內(nèi)能直接通過 IP:80 訪問,而且宿主機 80 不受影響
docker-compose 測試
docker-compose 示例如下
version: '2' services: centos: image: centos:7 restart: always command: /bin/bash -c "sleep 999999" networks: app_net: ipv4_address: 10.10.1.34 networks: app_net: driver: macvlan driver_opts: parent: enp3s0 ipam: config: - subnet: 10.10.1.0/24 gateway: 10.10.1.2 # ip_range: 10.25.87.32/28
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
使用Docker Compose 實現(xiàn)nginx負載均衡的方法步驟
這篇文章主要介紹了使用Docker Compose 實現(xiàn)nginx負載均衡的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05詳解Docker創(chuàng)建支持ssh服務的容器和鏡像
本篇文章主要介紹了詳解Docker創(chuàng)建支持ssh服務的容器和鏡像,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05一步步教你用docker部署postgreSQL數(shù)據(jù)庫
這篇文章主要給大家介紹了關于如何使用docker部署postgreSQL數(shù)據(jù)庫的相關資料,PostgreSQL是一款功能豐富的關系型數(shù)據(jù)庫,類似于MySQL,它也是受歡迎程度非常高的,需要的朋友可以參考下2023-11-11如何使用Docker恢復Mysql8備份的Data數(shù)據(jù)
這篇文章主要介紹了使用Docker恢復Mysql8備份的Data數(shù)據(jù),下面小編給大家講解下操作方法,對Docker恢復Mysql數(shù)據(jù)備份相關知識感興趣的朋友跟隨小編一起看看吧2022-11-11詳解使用Dockerfile創(chuàng)建帶Apache服務的CentOS Docker鏡像
本篇文章主要介紹了使用Dockerfile創(chuàng)建帶Apache服務的CentOS Docker鏡像,具有一定的參考價值,有興趣的可以了解一下。2016-12-12詳解掛載運行的docker容器中如何掛載文件系統(tǒng)
這篇文章主要給大家介紹了如何在掛載運行中的docker容器中掛載文件系統(tǒng),文中通過一步步的實踐過程介紹的很詳細,相信對有需要的朋友們來說具有一定的參考借鑒價值,感興趣的朋友們下面來一起看看吧。2016-12-12