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。

相关推荐
雪可问春风1 天前
docker环境部署
运维·docker·容器
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
为何创造硅基生物1 天前
ESP32S3的RGB屏幕漂移问题
网络
好运的阿财1 天前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
周杰伦fans1 天前
C# required 关键字详解
开发语言·网络·c#
洛水水1 天前
深入理解网络编程核心:Reactor、IOCP 与异步 IO 模型详解
网络·iocp
favour_you___1 天前
epoll惊群问题与解决
服务器·网络·tcp/ip·epoll
北方的流星1 天前
华三网络设备的路由重定向配置
运维·网络·华三
kobe_OKOK_1 天前
S7 adapter Docker run
运维·docker·容器
一个欠登儿程序员1 天前
在国产服务器上通过 Docker 部署 Windows 虚拟机
服务器·windows·docker