Docker配置HTTP/HTTPS代理的方法
起因
我在使用Docker的pull命令拉取ELK官方提供的鏡像時,會出現(xiàn)無法連接的情況,并且會出現(xiàn)TLS handshake timeout的錯誤。在搜索相關(guān)文章之后得出結(jié)論:國內(nèi)的網(wǎng)絡(luò)環(huán)境不好,導(dǎo)致連接docker.elastic.co失敗或無法連接。于是我第一時間想到了代理的方式,好在Docker支持設(shè)置代理來訪問其他Registry,下面記錄整個配置過程。
準備工作
首先,你的機器上需要安裝好Docker,當我寫這篇文章時,Docker的版本為18.03,對于后續(xù)版本,本文章的配置方法可能會失效。
假設(shè)你的環(huán)境也是Ubuntu(其他環(huán)境應(yīng)該也是類似的)。
開始配置
1、創(chuàng)建如下路徑的目錄
sudo mkdir -p /etc/systemd/system/docker.service.d
2、進入到上一步創(chuàng)建的目錄下,并在該目錄下創(chuàng)建一個名為http-proxy.conf的文件(如:/etc/systemd/system/docker.service.d/http-proxy.conf),使用vim編輯文件內(nèi)容如下
[Service] Environment="HTTPS_PROXY=http://127.0.0.1:1080/" "NO_PROXY=localhost,127.0.0.1,registry.docker-cn.com,hub-mirror.c.163.com"
3、刷新配置
sudo systemctl daemon-reload
4、重啟Docker服務(wù)
sudo systemctl restart docker
5、查看配置
systemctl show --property=Environment docker
出現(xiàn)如下信息表示配置成功:
Environment=HTTPS_PROXY=http://127.0.0.1:1080/ NO_PROXY=localhost,127.0.0.1,registry.docker-cn.com,hub-mirror.c.163.com
6、驗證配置是否生效
重新從docker.elastic.co上拉取elasticsearch鏡像,此時已經(jīng)可以正常連接了,只是速度較慢。
liuwei@liuwei-Ubuntu:~$ sudo docker pull docker.elastic.co/elasticsearch/elasticsearch:6.2.4
6.2.4: Pulling from elasticsearch/elasticsearch
469cfcc7a4b3: Downloading [==========================> ] 38.87MB/73.17MB
8e27facfa9e0: Downloading [===================================> ] 40.05MB/56.33MB
cdd15392adc7: Download complete
ddcc70fbd933: Downloading [====================> ] 44.31MB/108.9MB
3d3fa0383994: Waiting
15d1376ebd55: Waiting
這種方法適用于從一些第三方提供的Registry上拉取鏡像時,由于網(wǎng)絡(luò)原因無法連接。如果從Docker官方的鏡像倉庫中拉取鏡像時,一種比較好的辦法就是配置registry-mirrors實現(xiàn)加速,具體方法請自行搜索。
上述步驟是來自Docker官方文檔中的部分,原文地址為Control Docker with systemd。
如果你在配置過程遇到問題,歡迎在留言討論。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于Docker如何實現(xiàn)MySQL主從復(fù)制詳解
這篇文章主要給大家介紹了關(guān)于基于Docker如何實現(xiàn)MySQL主從復(fù)制的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
使用Docker搭建Vsftpd 的 FTP 服務(wù)的詳細過程
FTP 基礎(chǔ)FTP 需要兩個端口,一個是數(shù)據(jù)端口,一個是控制端口,這篇文章主要介紹了使用Docker搭建Vsftpd的FTP服務(wù),需要的朋友可以參考下2022-08-08
使用Docker方式啟動tomcat,訪問首頁出現(xiàn)404的解決方案
這篇文章主要介紹了使用Docker方式啟動tomcat,訪問首頁出現(xiàn)404的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-03-03
Windows?Server?2012?R2?安裝?Docker的詳細步驟
這篇文章主要介紹了Windows?Server?2012?R2?安裝?Docker,在這個給大家說明下使用windows10、Windows?Server?2016以上系統(tǒng)可直接使用安裝包,低版本系統(tǒng)需要使用?Docker?Toolbox?來進行安裝使用?Docker,需要的朋友可以參考下2022-04-04
使用Docker構(gòu)建企業(yè)級自定義鏡像的方法
這篇文章主要介紹了使用Docker構(gòu)建企業(yè)級自定義鏡像的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
Skywalking?Docker單機環(huán)境搭建過程
這篇文章主要介紹了Skywalking?Docker單機環(huán)境搭建,本次搭建是基于MySQL進行持久化,因此需要提前準備好一個MySQL容器,需要的朋友可以參考下2024-02-02

