日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker 其他电脑访问权限_docker – 从远程计算机连接到容器

發布時間:2025/3/15 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker 其他电脑访问权限_docker – 从远程计算机连接到容器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我今天回答了一個非常相似的問題,你能不能在這里看一下我的答案并遵循它,它對我來說非常適合.

這是答案:

創建持久性網橋

Bridge是一種設備(在我們的例子中是虛擬設備),其行為類似于網絡swiches(主要在網絡層2上運行),即,它可以將兩個或多個網絡接口連接到同一局域網(LAN)上如果他們有相同的子網.

您將創建新的持久性橋接器br0(它將在系統引導時自動啟動),將您的物理網絡接口添加到其中(在我的情況下,它是eth0).請注意,在將接口添加到網橋后,接口不再需要IP地址,因為網橋將獲得IP地址,可以代替您的接口使用,也就是說,您可以使用網橋進行通信,就好像它是您的物理接口,它將輸入/輸出數據包轉發到正確的目的地.您不需要將任何硬件(MAC地址)分配給網橋,它將自動獲取第一個添加的接口的MAC.

Warning: It is highly recommended not to do these steps remotely except you have a physical access to your server! You may lose your connection to your server if you were not careful.

安裝橋管理實用程序:

sudo apt install bridge-utils

The system will not be able to create the bridge without bridge-utils package.

要創建持久性橋,請編輯interfaces文件:

sudo vim /etc/network/interfaces

將以下配置添加到文件末尾(根據您的需要進行調整):

auto br0

iface br0 inet static

bridge_ports eth0

address 192.168.1.10

netmask 255.255.255.0

broadcast 192.168.1.255

gateway 192.168.1.1

現在刪除Docker的默認橋接器docker0,因為我們不需要它:

sudo systemctl stop docker

sudo ip link set dev docker0 down

sudo brctl delbr docker0

編輯Docker的服務啟動腳本以使用您的網橋(br0)而不是Docker的默認網橋(docker0),并傳遞一些重要的網橋參數:

Ubuntu的:

sudo vim /etc/systemd/multi-user.target.wants/docker.service

將文件調整為如下所示:

[Service]

ExecStart=/usr/bin/dockerd -H fd:// --bridge=br0 --fixed-cidr=192.168.1.32/27 --default-gateway=192.168.1.1

現在告訴系統有關該文件的更改:

sudo systemctl daemon-reload

重啟系統:

sudo reboot

現在檢查你的橋,它應該在那里!

ip addr

現在創建像bellow一樣的容器,這將導致為您的容器提供修復IP:

docker run --name myContainer \n -it --restart always --memory 100M \n --network bridge --cap-add NET_ADMIN \n --hostname client1.noureldin.local \n --add-host "client1.noureldin.local client1":192.168.1.123 \n mnoureldin/general-purpose:latest /bin/bash -c " \n ip addr flush dev eth0; \n ip addr add 192.168.1.123/24 brd + dev eth0; \n ip route add default via 192.168.1.1 dev eth0; \n /bin/bash"

與您的網絡要求相關的重要部分是:

--network bridge --cap-add NET_ADMIN \n ip addr flush dev eth0; \n ip addr add 192.168.1.123/24 brd + dev eth0; \n ip route add default via 192.168.1.1 dev eth0; \n

當然,請確保在容器中安裝了iproute2 net-tools iputils-ping軟件包,以便能夠執行公共網絡命令(通過ip命令完成固定IP).

第一次運行容器時,您可能不會注意到IP地址的任何更改,因為您的conainer可能沒有iproute2包(即沒有ip命令),只是安裝提到的包然后重啟容器和一切應該完全按照你的意愿!

希望有所幫助.

總結

以上是生活随笔為你收集整理的docker 其他电脑访问权限_docker – 从远程计算机连接到容器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。