99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

docker配置網(wǎng)絡(luò)代理

馬哥Linux運(yùn)維 ? 來(lái)源:博客園蒲公英PGY ? 2025-03-03 17:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

有時(shí)因?yàn)榫W(wǎng)絡(luò)原因,比如公司 NAT,或其它啥的,需要使用代理。Docker的代理配置,略顯復(fù)雜,因?yàn)橛腥N場(chǎng)景。但基本原理都是一致的,都是利用Linux的http_proxy等環(huán)境變量。

Dockerd 代理

在執(zhí)行docker pull時(shí),是由守護(hù)進(jìn)程dockerd來(lái)執(zhí)行。因此,代理需要配在dockerd的環(huán)境中。而這個(gè)環(huán)境,則是受systemd所管控,因此實(shí)際是systemd的配置。


sudo mkdir -p /etc/systemd/system/docker.service.d
sudo touch /etc/systemd/system/docker.service.d/proxy.conf

復(fù)制

在這個(gè)proxy.conf文件(可以是任意*.conf的形式)中,添加以下內(nèi)容:


[Service]
Environment="HTTP_PROXY=http://proxy.example.com:8080/"
Environment="HTTPS_PROXY=http://proxy.example.com:8080/"
Environment="NO_PROXY=localhost,127.0.0.1,.example.com"

復(fù)制

其中,proxy.example.com:8080要換成可用的免密代理。通常使用cntlm在本機(jī)自建免密代理,去對(duì)接公司的代理??蓞⒖肌禠inux下安裝配置Cntlm 代理》。

Container 代理

在容器運(yùn)行階段,如果需要代理上網(wǎng),則需要配置~/.docker/config.json。以下配置,只在Docker 17.07及以上版本生效。


{
"proxies":
{
"default":
{
"httpProxy": "http://proxy.example.com:8080",
"httpsProxy": "http://proxy.example.com:8080",
"noProxy": "localhost,127.0.0.1,.example.com"
}
}
}

復(fù)制

這個(gè)是用戶(hù)級(jí)的配置,除了proxies,docker login等相關(guān)信息也會(huì)在其中。而且還可以配置信息展示的格式、插件參數(shù)等。

此外,容器的網(wǎng)絡(luò)代理,也可以直接在其運(yùn)行時(shí)通過(guò)-e注入http_proxy等環(huán)境變量。這兩種方法分別適合不同場(chǎng)景。config.json非常方便,默認(rèn)在所有配置修改后啟動(dòng)的容器生效,適合個(gè)人開(kāi)發(fā)環(huán)境。在CI/CD的自動(dòng)構(gòu)建環(huán)境、或者實(shí)際上線(xiàn)運(yùn)行的環(huán)境中,這種方法就不太合適,用-e注入這種顯式配置會(huì)更好,減輕對(duì)構(gòu)建、部署環(huán)境的依賴(lài)。當(dāng)然,在這些環(huán)境中,最好用良好的設(shè)計(jì)避免配置代理上網(wǎng)。

Docker Build 代理

雖然docker build的本質(zhì),也是啟動(dòng)一個(gè)容器,但是環(huán)境會(huì)略有不同,用戶(hù)級(jí)配置無(wú)效。在構(gòu)建時(shí),需要注入http_proxy等參數(shù)。


docker build .
--build-arg "HTTP_PROXY=http://proxy.example.com:8080/"
--build-arg "HTTPS_PROXY=http://proxy.example.com:8080/"
--build-arg "NO_PROXY=localhost,127.0.0.1,.example.com"
-t your/image:tag

復(fù)制

注意:無(wú)論是docker run還是docker build,默認(rèn)是網(wǎng)絡(luò)隔絕的。如果代理使用的是localhost:3128這類(lèi),則會(huì)無(wú)效。這類(lèi)僅限本地的代理,必須加上--network host才能正常使用。而一般則需要配置代理的外部IP,而且代理本身要開(kāi)啟 Gateway 模式。

重啟生效

代理配置完成后,reboot重啟當(dāng)然可以生效,但不重啟也行。

docker build代理是在執(zhí)行前設(shè)置的,所以修改后,下次執(zhí)行立即生效。Container 代理的修改也是立即生效的,但是只針對(duì)以后啟動(dòng)的 Container,對(duì)已經(jīng)啟動(dòng)的 Container 無(wú)效。

dockerd代理的修改比較特殊,它實(shí)際上是改systemd的配置,因此需要重載systemd并重啟dockerd才能生效。


sudo systemctl daemon-reload
sudo systemctl restart docker

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213844
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    7815

    瀏覽量

    90973
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    515

    瀏覽量

    12971

原文標(biāo)題:docker 配置網(wǎng)絡(luò)代理

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于Linux內(nèi)核的透明代理配置方案

    本內(nèi)容提供了基于Linux內(nèi)核的透明代理配置方案,先解釋為什么要配置透明代理,如何利用Linux內(nèi)核來(lái)實(shí)現(xiàn)
    發(fā)表于 11-03 16:47 ?997次閱讀

    Docker網(wǎng)絡(luò)選型和日志監(jiān)控選型

    Docker容器化網(wǎng)絡(luò)和日志的選型和落地
    發(fā)表于 05-06 07:58

    docker的四種網(wǎng)絡(luò)模式

    docker網(wǎng)絡(luò)模式
    發(fā)表于 10-16 08:11

    網(wǎng)絡(luò)爬蟲(chóng)nodejs爬蟲(chóng)代理配置

    。就算驗(yàn)證碼通過(guò)了,也不會(huì)采集到數(shù)據(jù),這也就是所謂的反爬蟲(chóng)策略。所以這種情況下,越來(lái)越多的網(wǎng)絡(luò)爬蟲(chóng)會(huì)利用代理IP去進(jìn)行采集。目標(biāo)網(wǎng)站限制了一個(gè)IP,可以換一個(gè)代理IP繼續(xù)進(jìn)行業(yè)務(wù)采集。當(dāng)然每個(gè)人的爬蟲(chóng)程序
    發(fā)表于 09-01 17:23

    詳解docker的四種網(wǎng)絡(luò)模式

    使用none模式,Docker容器擁有自己的Network Namespace,但是,并不為Docker容器進(jìn)行任何網(wǎng)絡(luò)配置。也就是說(shuō),這個(gè)Dock
    的頭像 發(fā)表于 01-21 09:21 ?6969次閱讀

    國(guó)內(nèi)Docker CE 鏡像源的配置

    的新名稱(chēng),Docker CE 包含了完整的 Docker 平臺(tái),非常適合開(kāi)發(fā)人員和運(yùn)維團(tuán)隊(duì)構(gòu)建容器 APP。 ? 配置方法 Ubuntu 14.04/16.04(使用 apt-get 進(jìn)行安裝
    的頭像 發(fā)表于 11-09 09:16 ?3927次閱讀

    docker-sshd Docker容器的sshd代理

    ./oschina_soft/docker-sshd.zip
    發(fā)表于 05-12 11:13 ?0次下載
    <b class='flag-5'>docker</b>-sshd <b class='flag-5'>Docker</b>容器的sshd<b class='flag-5'>代理</b>

    weblogic-docker Docker配置項(xiàng)目

    ./oschina_soft/weblogic-docker.zip
    發(fā)表于 05-13 10:30 ?0次下載
    weblogic-<b class='flag-5'>docker</b> <b class='flag-5'>Docker</b>的<b class='flag-5'>配置</b>項(xiàng)目

    Docker鏡像的詳細(xì)講解

    本文是對(duì) Docker 鏡像的詳細(xì)講解,講解了如何安裝 Docker、配置 Docker 鏡像加速以及操作 Docker 鏡像。希望對(duì)大家有
    的頭像 發(fā)表于 08-02 10:00 ?2528次閱讀

    docker的4種網(wǎng)絡(luò)模式

    Docker 使用 Linux 橋接,在宿主機(jī)虛擬一個(gè) Docker 容器網(wǎng)橋(docker0),Docker 啟動(dòng)一個(gè)容器時(shí)會(huì)根據(jù) Docker
    的頭像 發(fā)表于 08-14 11:50 ?2224次閱讀

    docker的4種網(wǎng)絡(luò)模式配置

    Docker 使用 Linux 橋接,在宿主機(jī)虛擬一個(gè) Docker 容器網(wǎng)橋(docker0),Docker 啟動(dòng)一個(gè)容器時(shí)會(huì)根據(jù) Docker
    的頭像 發(fā)表于 10-10 10:37 ?1837次閱讀

    Docker容器的四種網(wǎng)絡(luò)模式

    Docker 在安裝后自動(dòng)提供 3 種網(wǎng)絡(luò),可以使用 docker network ls 命令查看。
    的頭像 發(fā)表于 10-17 14:53 ?2018次閱讀

    Docker容器網(wǎng)絡(luò)的數(shù)據(jù)鏈路是什么

    單主機(jī)容器網(wǎng)絡(luò)可能存在多個(gè)docker,分屬于不同的bridge,它們之間有通信的需求。
    的頭像 發(fā)表于 02-15 09:56 ?1233次閱讀
    <b class='flag-5'>Docker</b>容器<b class='flag-5'>網(wǎng)絡(luò)</b>的數(shù)據(jù)鏈路是什么

    鴻蒙OpenHarmony:【配置代理

    新建代理配置文件。
    的頭像 發(fā)表于 04-29 22:17 ?1108次閱讀
    鴻蒙OpenHarmony:【<b class='flag-5'>配置</b><b class='flag-5'>代理</b>】

    如何安全配置并使用境外SOCKS5代理進(jìn)行網(wǎng)絡(luò)訪(fǎng)問(wèn)

    配置和使用境外SOCKS5代理進(jìn)行網(wǎng)絡(luò)訪(fǎng)問(wèn)時(shí),必須嚴(yán)格遵守法律法規(guī),并確保個(gè)人信息安全。
    的頭像 發(fā)表于 09-25 08:06 ?795次閱讀