1) Docker 配置
1.1) daemon.json
配置映象
- 路徑: /etc/docker/daemon.json
- 文件: Config Daemon
registry-mirrors
設定映象,加速 docker pull
官方映象。以下舉例為阿里源。
{
"experimental": true,
"features": { "buildkit": true },
"registry-mirrors": ["https://<your token>.mirror.aliyuncs.com"]
}
1.2) config.json
配置代理
- 路徑: ~/.docker/config.json
- 文件: Network Proxy
proxies
設定 HTTP, HTTPS 代理,加速如 wget, curl 等 HTTP 請求。
{
"proxies": {
"default": {
"httpProxy": "http://192.168.1.100:7890",
"httpsProxy": "http://192.168.1.100:7890",
"noProxy": "localhost, 127.0.0.0/8, ::1"
}
}
}
如果沒有代理服務可用,可參考後文其他加速方式。
2) 其他加速方式
2.1) 包管理工具配置各自映象
如 apt
pip
等,可以配置其各自的映象源。常用映象源,可見:
- 清華源: https://mirrors.tuna.tsinghua.edu.cn/
- 中科大: http://mirrors.ustc.edu.cn/
- 阿里源: https://developer.aliyun.com/mirror/
- 網易源: http://mirrors.163.com/
2.2) 程式碼倉庫映象到國內平臺
git clone
原倉庫太慢,可於國內程式碼託管站點(如 Gitee)上找下映象或自己匯入一份,然後 git clone
映象倉庫地址。
2.3) 預先下載檔案並使用
有些檔案只好直接下載,但太慢。或者檔案太大,每次下載太耗時。可以預先用其他工具或渠道下載好後再使用。
使用方式一: ADD/COPY
Dockerfile ADD/COPY
此檔案。但因為 ADD/COPY
會增加增加層級、映象變大,所以只建議用在不用刪除清理的檔案。而像安裝包等,不建議用此辦法。
這時,可以用 Docker 的多階段構建避免此問題,參見文件 Use multi-stage builds 。
但,這裡建議用方式二: HTTP Server 。
使用方式二: HTTP Server
啟用 HTTP 靜態檔案服務,方法可見這裡,
這樣,仍依照 Dockerfile 最佳實踐, RUN
時 wget, curl 下載。只是改下下載地址,也可以把下載地址設成 ARG
引數。
結語
Go coding!