KSpeeder 使用指南:如何解決 Docker 鏡像無(wú)法拉取的問(wèn)題

文章首發(fā)于/公/眾/號(hào):阿拉平平

不知道大家有沒(méi)有注意,我在介紹項(xiàng)目安裝時(shí),基本只介紹容器的用法。我覺(jué)得對(duì)新手而言,容器化部署一定是最友好的,也是效率最高的。不過(guò)問(wèn)題也很明顯,Docker 默認(rèn)會(huì)從 Docker Hub 拉取鏡像,但因?yàn)榫W(wǎng)絡(luò)原因,導(dǎo)致無(wú)法拉取。那這個(gè)難題有沒(méi)有辦法解決呢?

1. 項(xiàng)目介紹

KSpeeder[1] 是一個(gè)用于優(yōu)化 Docker 鏡像倉(cāng)庫(kù)訪問(wèn)的工具,它提供了智能鏡像源選擇、下載加速、狀態(tài)監(jiān)控等功能。項(xiàng)目提供了多架構(gòu)支持,可以在不同的硬件平臺(tái)上運(yùn)行。

2. 快速安裝

首先使用鏡像代理下載鏡像:

# 拉取鏡像
docker pull docker.m.daocloud.io/linkease/kspeeder

# 打上標(biāo)簽
docker tag docker.m.daocloud.io/linkease/kspeeder docker.io/linkease/kspeeder

再創(chuàng)建 docker-compose.yaml,目錄結(jié)構(gòu)如下:

/opt/KSpeeder
└── docker-compose.yaml

docker-compose.yaml 內(nèi)容如下:

version: "3.8"

services:
  kspeeder:
    image: linkease/kspeeder:latest
    container_name: kspeeder
    ports:
      - "5443:5443"
      - "5003:5003"
    volumes:
      - ./kspeeder-data:/kspeeder-data
      - ./kspeeder-config:/kspeeder-config
    restart: unless-stopped

添加好后,在目錄中運(yùn)行以下命令:

docker-compose up -d

服務(wù)啟動(dòng)后,在瀏覽器中輸入 http://<IP>:5003 來(lái)訪問(wèn)。

3. 使用說(shuō)明

為了測(cè)試 KSpeeder 的加速效果,我決定拉取一個(gè)大體積鏡像,比如之前介紹過(guò)的 Hoppscotch。

正常情況下,拉取 Hoppscotch 鏡像的命令為:

docker pull hoppscotch/hoppscotch

要使用 KSpeeder 加速,只需加上前綴 registry.linkease.net:5443 就行了,完整的命令如下:

docker pull registry.linkease.net:5443/hoppscotch/hoppscotch

管理頁(yè)面顯示下載速度可以達(dá)到 10 M/s 以上。

4. 其它配置

每次拉取鏡像都要加上前綴,多少有些麻煩了。我使用的是 Linux 服務(wù)器,只需修改下 Docker 的配置就可以解決這個(gè)問(wèn)題。

編輯 Docker 配置文件(不存在的話則新建):

vi /etc/docker/daemon.json

添加 registry-mirrors 字段并指定 KSpeeder 的鏡像服務(wù)器:

{
  "registry-mirrors": ["https://registry.linkease.net:5443"]
}

保存配置文件,重啟 Docker 服務(wù)讓其生效:

systemctl restart docker

服務(wù)重啟好后,再拉取鏡像就不用加上前綴了。

5. 寫(xiě)在最后

針對(duì) Docker 無(wú)法拉取鏡像的情況,通常的做法是配置鏡像加速站。但是很多時(shí)候,加速站并不穩(wěn)定,可能運(yùn)行一段時(shí)間后就失效了。KSpeeder 則不失為一個(gè)更加簡(jiǎn)單便捷的解決方案,部署起來(lái)也挺方便的。

References

[1] KSpeeder:https://github.com/kspeeder/docker_kspeeder

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容