官方文档:https://docs.docker.com/engine/install/ubuntu/
华为云镜像文档:https://mirrors.huaweicloud.com/mirrorDetail/5ea14d84b58d16ef329c5c13
安装仓库
将镜像地址换成华为云地址 https://mirrors.huaweicloud.com/docker-ce/linux/debian
:
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.huaweicloud.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.huaweicloud.com/docker-ce/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
安装 Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
配置镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.1ms.run/"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
配置代理
CLI 代理
新增配置文件 ~/.docker/config.json
:
{
"proxies": {
"default": {
"httpProxy": "http://proxy.example.com:8080",
"httpsProxy": "http://proxy.example.com:8080",
"noProxy": "127.0.0.1,::1,localhost,.example.com"
}
}
}
Docker CLI 代理 官方文档:https://docs.docker.com/engine/cli/proxy/
Daemon 代理
/etc/docker/daemon.json
文件(不存在则手动创建)中增加以下内容:
{
"proxies": {
"http-proxy": "http://proxy.example.com:3128",
"https-proxy": "https://proxy.example.com:3129",
"no-proxy": "*.test.example.com,.example.org,127.0.0.0/8"
}
}
重启 Docker 服务:
sudo systemctl restart docker
Docker Daemon 代理 官方文档:https://docs.docker.com/engine/daemon/proxy/
也可配置环境变量
创建目录:
sudo mkdir -p /etc/systemd/system/docker.service.d
创建文件 /etc/systemd/system/docker.service.d/http-proxy.conf
:
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:3128"
Environment="HTTPS_PROXY=https://proxy.example.com:3129"
Environment="NO_PROXY=localhost,127.0.0.1,::1,aliyuncs.com"
刷新使之生效:
sudo systemctl daemon-reload
sudo systemctl restart docker
验证:
sudo systemctl show --property=Environment docker
Daemon 代理配置和
VS Code Docker 插件
可以使用 VS Code Docker 插件管理 Docker,但会提示无法连接 Docker。
按 Docker 官方文档 https://docs.docker.com/engine/install/linux-postinstall/ 进行配置。
sudo groupadd docker
sudo usermod -aG docker $USER
虚拟机需重启服务器,实体机可使用 newgrp docker
命令使用户组更改生效。
验证
docker run hello-world