背景
由于近期國內docker鏡像地址失效(2024年6月份開始),導致pull docker 鏡像總是超時。
涉及到的網址和工具
- https://github.com/tech-shrimp/docker_image_pusher
- https://hub.docker.com/search
- 阿里云
GITHUB配置
fork
https://github.com/tech-shrimp/docker_image_pusher 該項目到自己的賬戶下。
設置環境變量,其路徑如下圖
在該項目中 .github/workflows/docker.yaml
找到 env
標簽
ALIYUN_REGISTRY: "${{ secrets.ALIYUN_REGISTRY }}"ALIYUN_NAME_SPACE: "${{ secrets.ALIYUN_NAME_SPACE }}"ALIYUN_REGISTRY_USER: "${{ secrets.ALIYUN_REGISTRY_USER }}"ALIYUN_REGISTRY_PASSWORD: "${{ secrets.ALIYUN_REGISTRY_PASSWORD }}"
將ALIYUN_REGISTRY
, ALIYUN_NAME_SPACE
, ALIYUN_REGISTRY_USER
, ALIYUN_REGISTRY_PASSWORD
四個作為 Name
分別填入(如上圖), Secret
值是需要申請阿里云設置好,粘貼過來。在下節阿里云配置中詳細告訴如何配置。
完成上述四個變量參數的設置后,在Actions
中如下點擊。
這樣github基本完成配置
阿里云配置
-
搜:“容器鏡像服務acr”
-
進入個人實例
-
分別可以獲取密碼
ALIYUN_REGISTRY_PASSWORD
,用戶名ALIYUN_REGISTRY_USER
,設置 “固定密碼”ALIYUN_REGISTRY_PASSWORD
。再進入 “命名空間” -> “創建命名空間”ALIYUN_NAME_SPACE
。
-
將加速器地址拷貝下來,寫入到
docker/daemon.json
中的registry-mirrors
地址列表中。方便本地docker 拉取鏡像。
拉取鏡像
- https://hub.docker.com/search 尋找自己要的鏡像。比如
mysql
- 回到
github
的docker_image_pusher
項目,修改images.txt
文件,然后提交保存(可以將默認配置刪除)。
- 想要看是否正確配置,可以看該處。這里正在拉取鏡像到阿里云的 “命名空間”
- 執行完成后,就可以在阿里云的 “鏡像倉庫” 看到自己需要的鏡像了。
- 本地拉取。進入詳情頁有操作指南。