Docker国内设置镜像或代理

一.设置镜像

**编辑 **/etc/docker/daemon.json 文件(如果没有则创建)

sudo mkdir -p /etc/docker
sudo nano /etc/docker/daemon.json

放入 daemon.json

{
    "registry-mirrors": ["https://docker.1panel.live"]
}

也可以添加多个

{
  "registry-mirrors": [
    "https://docker.1panel.live",
    "https://docker.1ms.run",
    "https://dytt.online",
    "https://docker-0.unsee.tech",
    "https://lispy.org",
    "https://docker.xiaogenban1993.com",
    "https://666860.xyz",
    "https://hub.rat.dev",
    "https://docker.m.daocloud.io",
    "https://demo.52013120.xyz",
    "https://proxy.vvvv.ee",
    "https://registry.cyou"
  ]
}

修改完成后,重启 Docker 服务使配置生效

sudo systemctl restart docker

**使用 DockerHub Proxy,以下以 **docker.1ms.run 为例:可以根据列表自行替换来测试是否拉取成功

docker pull docker.1ms.run/library/mysql:5.7

二.设置代理

sudo mkdir -p /etc/systemd/system/docker.service.d
​
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://proxy.example.com:80/"
Environment="HTTPS_PROXY=https://proxy.example.com:443/"
Environment="NO_PROXY=localhost,127.0.0.1"
  • HTTP_PROXYHTTPS_PROXY 分别用于指定 HTTP 和 HTTPS 请求的代理服务器地址。
  • NO_PROXY 指定不需要通过代理访问的主机列表。

重启docker

sudo systemctl daemon-reload
sudo systemctl restart docker