Docker 在国内网络环境下的使用

在国内,由于访问 Docker 官方镜像仓库时速度较慢,使用国内的镜像源可以显著提升 Docker 镜像的下载速度。本文将介绍如何在 Ubuntu 系统上配置 Docker,使用国内镜像源并优化 Docker 配置。

参考文献:

1. 安装 Docker

首先,更新系统并安装 Docker 所需的依赖项:

bash 复制代码
sudo apt update && sudo apt install -y ca-certificates curl gnupg lsb-release

然后,添加阿里云 Docker 镜像的 GPG 密钥:

bash 复制代码
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/aliyun-docker.gpg

接下来,配置 Docker 镜像源为阿里云的镜像源:

bash 复制代码
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/aliyun-docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新软件包列表并安装 Docker:

bash 复制代码
sudo apt update
sudo apt install -y docker-ce

安装完成后,可以使用以下命令检查 Docker 是否安装成功:

bash 复制代码
sudo docker info

2. 免 sudo 执行 Docker 命令

每次执行 Docker 命令时都需要加 sudo 会显得比较繁琐。为了避免每次都加 sudo,可以将当前用户添加到 docker 用户组:

bash 复制代码
sudo usermod -aG docker $USER
newgrp docker

执行完上述命令后,注销并重新登录,之后就可以直接执行 docker 命令,而无需每次加 sudo

3. 配置 Docker 镜像源

为了加速 Docker 镜像的下载速度,可以配置国内的 Docker 镜像源。首先,创建 Docker 配置文件目录:

bash 复制代码
sudo mkdir -p /etc/docker

然后,编辑 Docker 的配置文件 daemon.json

bash 复制代码
sudo vim /etc/docker/daemon.json

在文件中输入以下内容(使用上面提到的阿里云镜像源列表):

json 复制代码
{
  "debug": true,
  "experimental": false,
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker.m.daocloud.io",
    "https://lispy.org", 
    "https://docker-0.unsee.tech"
  ]
}

配置完成后,重新加载 Docker 配置:

bash 复制代码
sudo systemctl daemon-reload

接着,重启 Docker 服务:

bash 复制代码
sudo systemctl restart docker

最后,检查镜像源是否生效:

bash 复制代码
docker info | grep -A 1 "Registry Mirrors"

如果显示了配置的国内镜像源,说明配置成功。

总结

通过配置国内的 Docker 镜像源,能够显著提升 Docker 镜像下载速度,减少等待时间。同时,将当前用户添加到 docker 用户组,可以避免每次执行命令时都加 sudo。通过上述步骤,你可以在国内网络环境下更高效地使用 Docker。

相关推荐
小诗懂技术2 小时前
【网络通信UDP】基础 进程间不同主机的通信
运维·服务器·网络
名字还没想好☜2 小时前
Docker 容器安全加固实战:非 root、只读根文件系统、drop capabilities 与最小攻击面
运维·安全·docker·容器·kubernetes
码--到成功3 小时前
Docker、Kubernetes安装系列 二
docker·容器·kubernetes
DM今天肝到几点?4 小时前
AI 安全进入「攻防同频」:Gemini 3.8 Flash Cyber 上线、Astra 触及关键级、HiddenLayer 融资 1 亿美元
网络·人工智能·深度学习·安全·语言模型·开源·知识图谱
M--Y4 小时前
Docker镜像与仓库管理详解
docker·容器
幼儿园蛋小黑4 小时前
TCP 并发:从原理到高并发实践
网络·网络协议·tcp/ip
mohesashou4 小时前
k8s的service
云原生·容器·kubernetes
starzy19904 小时前
虚拟化解决方案全景:软件虚拟化、硬件虚拟化与 Docker 的位置
运维·docker·容器
我爱cope6 小时前
【计算机网络 | 网络层11:ICMP 协议:Ping 和 Traceroute 的底层原理】
网络·学习·计算机网络
梦Arrebol6 小时前
Kubernetes 微服务
微服务·容器·kubernetes