docker 學習筆記之docker連接網(wǎng)絡的設置
1、如果docker主機不需要通過代理連接外網(wǎng)
則docker的相關命令(如docker search)或docker容器與網(wǎng)絡相關的操作都可以正常進行,不需要特殊設置。
2、當docker主機 是通過代理才能連接外網(wǎng)時,采用服務方式啟動守護進程
如果docker守護進程是通過服務的方式啟動的(sudo start docker)
當我們執(zhí)行如 docker search ubuntu 命令時,會報錯
Error response from daemon: Get https://index.docker.io/v1/search?q=ubuntu: dial tcp: lookup index.docker.io on 127.0.1.1:53: read udp 127.0.1.1:53: i/o timeout
而且這時啟動的容器,在容器內(nèi)也無法連接外網(wǎng)。
需要通過設置來完成。
3、當docker主機 是通過代理才能連接外網(wǎng)時,讓docker守護進程可連接外網(wǎng),非服務啟動方式
通過如下方式啟動docker守護進程
sudo HTTP_PROXY=http://代理地址:端口 docker daemon
這時執(zhí)行如 docker search ubuntu 命令時,可以成功。 注意,這并不需要docker主機自己設置代理上網(wǎng)(也就是docker進程沒有利用主機設置的代理上網(wǎng))。
但是正常啟動的容器,在容器內(nèi)也無法連接外網(wǎng)。
4、當docker主機 是通過代理才能連接外網(wǎng)時,采用服務方式啟動
可以修改 /etc/default/docker 配置文件
# If you need Docker to use an HTTP proxy, it can also be specified here. #export http_proxy="http://127.0.0.1:3128/" export http_proxy="http://代理地址:端口"
這樣采用 sudo start docker方式啟動守護進程后
這時執(zhí)行如 docker search ubuntu 命令時,可以成功。
注意,這并不需要docker主機自己設置代理上網(wǎng)(也就是docker進程沒有利用主機設置的代理上網(wǎng))。
但是正常啟動的容器,在容器內(nèi)也無法連接外網(wǎng)。
5、怎么讓容器通過代理上網(wǎng)
容器本身是一個輕量級的linux系統(tǒng),我們可以通讓主機上網(wǎng)一樣設置讓其上網(wǎng)。容器上網(wǎng)和讓docker守護進程聯(lián)網(wǎng)沒有關系。
方法一:臨時聯(lián)網(wǎng)
在shell界面上設置臨時環(huán)境變量: export http_proxy="http://代理ip地址:端口"
如:
export http_proxy=http://10.41.70.8:80
一旦設置正確的環(huán)境變量http_proxy,容器就可以正常上網(wǎng)了。
因為是臨時的,shell關閉后,環(huán)境變量就沒了。
方法二:修改主目錄下的.bashrc文件,增加兩行
http_proxy=http://yourproxyaddress:proxyport export http_proxy
就是把環(huán)境變量http_proxy持久化,但只對該用戶登錄有效。
注意:容器設置代理 和 docker主機設置代理以及docker守護進程設置代理無關,也就是容器只會使用自己的代理信息上網(wǎng)。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
基于docker部署skywalking實現(xiàn)全鏈路監(jiān)控功能
這篇文章主要介紹了基于docker部署skywalking實現(xiàn)全鏈路監(jiān)控,skywalking提供了在很多不同的場景下用于觀察和監(jiān)控分布式系統(tǒng)的方式,文中給大家介紹如何快速部署skywalking全鏈路監(jiān)控,感興趣的朋友一起看看吧2022-03-03Linux環(huán)境下安裝docker環(huán)境(親測無坑)
大家好,本篇文章主要講的是Linux環(huán)境下安裝docker環(huán)境(親測無坑),感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下2021-12-12Docker-compose搭建Redis集群(Sentinel)的實現(xiàn)
本文主要介紹了Docker-compose搭建Redis集群(Sentinel)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07Docker配置文件docker-compose.yml使用指南
本文主要介紹了Docker配置文件docker-compose.yml使用指南,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07Docker部署springboot項目到騰訊云的實現(xiàn)步驟
本文主要介紹了Docker部署springboot項目到騰訊云的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-04-04