搭建Docker环境
文章目录
- 搭建Docker环境
- Ubuntu版本安装Docker
- Centos版本安装Docker
- 配置镜像加速
Ubuntu版本安装Docker
按照以下步骤在 Ubuntu 上安装 Docker:
-
卸载旧版本的 Docker(如果有):
sudo apt-get remove docker docker-engine docker.io containerd runc
-
更新 apt 软件包索引并安装必需的软件包以允许 apt over HTTPS 访问 Docker 仓库:
sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release
-
添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
-
使用以下命令设置稳定版 Docker 的稳定存储库:
echo \"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-
更新 apt 软件包索引,并安装最新版本的 Docker:
sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io
-
(可选)将当前用户添加到 docker 用户组中,以使无需使用 sudo 即可运行 Docker 命令:
sudo usermod -aG docker $USER
-
重启 Docker 服务以确保所有更改生效:
sudo systemctl restart docker.service
这些步骤将在Ubuntu 系统上安装 Docker。
-
可以运行以下命令来检查 Docker 是否安装成功:
docker version
如果 Docker 已经正确安装,则会显示 Docker 的版本信息。例如:
Client: Docker Engine - Community
Version: 20.10.7Server: Docker Engine - Community
Engine:Version: 20.10.7
如果想测试 Docker 是否能够正常工作,可以通过运行以下命令来启动一个 Hello World 容器:
docker run hello-world
如果你看到类似于下面的输出,则表示 Docker 环境已经准备好了:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
请注意,在运行以上命令之前,请确保已经正确地安装并启动了 Docker 服务。
Centos版本安装Docker
注意: CentOS 在安装 Docker 时默认会安装 Docker 的官方仓库,并通过该仓库下载 Docker 软件包。而 Ubuntu 安装 Docker 时需要添加 Docker 的官方 GPG 密钥,是因为 Ubuntu 默认的软件源没有包含 Docker 的官方仓库,需要手动添加。因此,这两种操作的差异是由操作系统本身的软件源差异导致的。
以下是在 CentOS 上安装 Docker 的步骤:
- 卸载旧版本的 Docker
如果你已经安装了旧版本的 Docker,请先将其卸载:
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
- 安装必要的软件包
Docker 需要一些必要的软件包才能在 CentOS 上运行。运行以下命令安装这些软件包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 添加 Docker 的 yum 仓库
运行以下命令添加 Docker 的 yum 仓库:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- 安装 Docker
运行以下命令安装 Docker:
sudo yum install docker-ce docker-ce-cli containerd.io
- 启动 Docker
运行以下命令启动 Docker 服务:
sudo systemctl start docker
- 验证 Docker 是否安装成功
运行以下命令验证 Docker 是否安装成功:
sudo docker run hello-world
如果一切正常,您应该会看到一条欢迎信息,表示 Docker 安装成功。如果您看到类似于下面的输出,则表示 Docker 环境已经准备好了:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
以上是在 CentOS 上安装 Docker 的步骤。
同理
- 可以运行以下命令来检查 Docker 是否安装成功:
docker version
如果 Docker 已经正确安装,则会显示 Docker 的版本信息。例如:
Client: Docker Engine - CommunityVersion: 23.0.5API version: 1.42Go version: go1.19.8Git commit: bc4487aBuilt: Wed Apr 26 16:18:56 2023OS/Arch: linux/amd64Context: defaultServer: Docker Engine - CommunityEngine:Version: 23.0.5API version: 1.42 (minimum version 1.12)Go version: go1.19.8Git commit: 94d3ad6Built: Wed Apr 26 16:16:35 2023OS/Arch: linux/amd64Experimental: falsecontainerd:Version: 1.6.20GitCommit: 2806fc1057397dbaeefbea0e4e17bddfbd388f38runc:Version: 1.1.5GitCommit: v1.1.5-0-gf19387adocker-init:Version: 0.19.0GitCommit: de40ad0
请注意,在运行以上命令之前,请确保已经正确地安装并启动了 Docker 服务。
配置镜像加速
- 配置阿里云镜像仓库(镜像加速)
Docker的默认官方远程仓库是hub.docker.com,由于网络原因,下载一个Docker官方镜像可能会需要很长的时间,甚至下载失败。为此,阿里云容器镜像服务ACR提供了官方的镜像站点,从而加速官方镜像的下载。下面介绍如何使用阿里云镜像仓库。
- https://cr.console.aliyun.com/cn-guangzhou/instances 前往阿里云的容器镜像控制台
- 对应Ubuntu的文档
- 对应CentOS的文档
- 加速地址:https://xxxxxxx.mirror.aliyuncs.com (注意:每个人的加速地址都不一样,用自己的就行)
- 配置命令:
- 创建目录
# 创建目录 sudo mkdir -p /etc/docker
- 创建服务配置文件
# 创建服务配置文件。 sudo tee /etc/docker/daemon.json <<-'EOF' {"registry-mirrors": ["https://xxxxxxxx.mirror.aliyuncs.com"] } EOF
用于创建一个名为 daemon.json
的 Docker 配置文件,并设置了一个镜像仓库地址供 Docker 使用。使用 sudo
命令以超级用户身份执行命令,然后使用 tee
命令将输出同时写入终端和指定的文件/etc/docker/daemon.json
中。之后使用 Here Document 的语法(即 <<-'EOF'
)定义了一个 JSON 对象,其中 "registry-mirrors"
键被设置为一个镜像仓库的地址列表,这里使用的地址是https://xxxxxxxx.mirror.aliyuncs.com
,该地址可以加速 Docker 拉取镜像的速度。作用是告诉 Docker 从指定的镜像仓库中拉取镜像,而不是默认的 Docker Hub 镜像仓库。
# 重新加载服务配置文件。
sudo systemctl daemon-reload# 重启Docker服务。
sudo systemctl restart docker
- Ubuntu的
- centos的
这两种Linux系统的Docker配置镜像加速都是一毛一样。