搭建 Docker

最近更新时间:2025-02-18 14:17:32

我的收藏

操作场景

本文档介绍如何在腾讯云云服务器上搭建和使用 Docker。本文适用于熟悉 Linux 操作系统,刚开始使用腾讯云云服务器的开发者。如需了解更多关于 Docker 相关信息,请参见 Docker 官方
说明:
Windows Subsystem for Linux(简称 WSL)在 Windows Server 2022 系统中遇到了一些限制。由于系统内核完整性的原因,WSL 1无法运行 Linux Docker。虽然 WSL 2 可以运行 Linux Docker,但它需要硬件支持二次虚拟化,而普通的云服务器(包括 Lighthouse)不支持二次虚拟化。因此,无论是 WSL 1还是 WSL 2,在普通 Windows 云服务器上都无法运行 Linux Docker。
如果是 Windows 普通云服务器(含 Lighthouse),不支持 Install Docker Desktop on Windows;如果是 Windows 裸金属物理机,则建议选择 Server 2022 系统,具体信息请参考相关文档 微软官方文档 - 准备适用于容器的 Windows 来配置。

示例操作系统

本文使用云服务器实例操作系统以腾讯云公共镜像的 TencentOS Server 4、TencentOS Server 3、CentOS 8.2、CentOS 7.9、Ubuntu 22.04、Debian 12.5、OpenCloudOS 9.0、OpenCloudOS 8.0为例。
若您使用 TencentOS Server 2.4 (TK4) 操作系统,镜像已预置 Docker,无需再次安装,可参见 使用 Docker 直接开始使用。

前提条件

已购买 Linux 云服务器。如果您还未购买云服务器,请参见 快速配置 Linux 云服务器
说明:
搭建 Docker 必须使用64位系统,且内核版本至少为3.10。

操作步骤

安装 Docker

根据您使用的操作系统版本,执行以下操作步骤:
2. 安装 Docker。
TencentOS Server 4
TencentOS Server 3
CentOS 8.2
CentOS 7.9
Ubuntu 22.04
Debian 12.5
OpenCloudOS 9.0
OpenCloudOS 8.0
1. 该版本操作系统公共镜像已预置腾讯云的 docker 源,可执行以下命令,安装 Docker。
sudo yum install docker -y
2. 执行以下命令,运行 Docker。
sudo systemctl start docker
3. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。



1. 该版本操作系统公共镜像已预置腾讯云的 docker-ce 源,可执行以下命令,安装 Docker。
sudo dnf install -y docker-ce --nobest
2. 执行以下命令,运行 Docker。
sudo systemctl start docker
3. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。



1. 执行以下命令,添加 Docker 软件源并配置为腾讯云源。
sudo dnf config-manager --add-repo=https://mirrors.cloud.tencent.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i "s/download.docker.com/mirrors.tencentyun.com\\/docker-ce/g" /etc/yum.repos.d/docker-ce.repo
2. 执行以下命令,查看已添加的 Docker 软件源。
sudo dnf list docker-ce
3. 执行以下命令,安装 Docker。
sudo dnf install -y docker-ce --nobest
4. 执行以下命令,运行 Docker。
sudo systemctl start docker
5. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。



1. 执行以下命令,添加 Docker 软件源并配置为腾讯云源。
sudo yum-config-manager --add-repo=https://mirrors.cloud.tencent.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i "s/download.docker.com/mirrors.tencentyun.com\\/docker-ce/g" /etc/yum.repos.d/docker-ce.repo
2. 执行以下命令,查看已添加的 Docker 软件源。
sudo yum list docker-ce
3. 执行以下命令,安装 Docker。
sudo yum install -y docker-ce
4. 执行以下命令,运行 Docker。
sudo systemctl start docker
5. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。


1. 执行以下命令,添加 Docker 软件源。
sudo apt-get update
sudo apt-get install ca-certificates curl -y
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/ \\
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
2. 执行以下命令,安装 Docker。
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
3. 执行以下命令,运行 Docker。
sudo systemctl start docker
4. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。


1. 执行以下命令,添加 Docker 软件源。
sudo apt-get update
sudo apt-get install ca-certificates curl -y
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.cloud.tencent.com/docker-ce/linux/debian/ \\ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
2. 执行以下命令,安装 Docker。
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
3. 执行以下命令,运行 Docker。
sudo systemctl start docker
4. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,则表示安装成功。


1. 执行以下命令,安装 Docker。
sudo yum install docker -y
2. 执行以下命令,运行 Docker。
sudo systemctl start docker
3. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。



1. 执行以下命令,添加 Docker 软件源并配置为腾讯云源。
sudo dnf config-manager --add-repo=https://mirrors.cloud.tencent.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i "s/download.docker.com/mirrors.tencentyun.com\\/docker-ce/g" /etc/yum.repos.d/docker-ce.repo
2. 执行以下命令,查看已添加的 Docker 软件源。
sudo dnf list docker-ce
3. 执行以下命令,安装 Docker。
sudo dnf install -y docker-ce --nobest
4. 执行以下命令,运行 Docker。
sudo systemctl start docker
5. 执行以下命令,检查安装结果。
sudo docker info
返回如下信息,即表示安装成功。




使用 Docker

Docker 的基本使用命令如下:
管理 Docker 守护进程。
运行 Docker 守护进程:
sudo systemctl start docker
停止 Docker 守护进程:
sudo systemctl stop docker
重启 Docker 守护进程:
sudo systemctl restart docker
管理镜像。本文以 Docker Hub 的 Nginx 镜像为例。
sudo docker pull nginx
修改标签:您可以修改镜像标签以便记忆区分。
sudo docker tag docker.io/nginx:latest tencentyun/nginx:v1
查看已有镜像:
sudo docker images
强制删除镜像:
sudo docker rmi -f tencentyun/nginx:v1
管理容器。
进入容器:
sudo docker run -it ImageId /bin/bash
其中,ImageId 可通过执行 docker images 命令获取。
退出容器:执行 exit 命令,退出当前容器。
进入后台运行的容器:
sudo docker exec -it 容器 ID /bin/bash
将容器做成镜像:
sudo docker commit <容器 ID 或容器名> [<仓库名>[:<标签>]]
例如:
sudo docker commit 1c23456cd7**** tencentyun/nginx:v2

制作镜像

1. 执行以下命令,打开 Dockerfile 文件。
vim Dockerfile
2. i 切换至编辑模式,添加如下内容。
FROM tencentyun/nginx:v2 #声明基础镜像来源。
MAINTAINER DTSTACK #声明镜像拥有者。
RUN mkdir /dtstact # RUN 后面接容器运行前需要执行的命令,由于 Dockerfile 文件不能超过127行,因此当命令较多时建议写到脚本中执行。
ENTRYPOINT ping https://cloud.tencent.com/ #开机启动命令,此处最后一个命令需要是可在前台持续执行的命令,否则容器后台运行时会因为命令执行完而退出。
3. Esc,输入 :wq,保存文件并返回。
4. 执行以下命令,构建镜像。
sudo docker build -t nginxos:v1 . #.是 Dockerfile 文件的路径,不能忽略。
5. 执行以下命令,查看镜像是否创建成功。
sudo docker images
6. 依次执行以下命令,运行容器并查看容器。
sudo docker run -d nginxos:v1 #后台运行容器。
sudo docker ps #查看当前运行中的容器。
sudo docker ps -a #查看所有容器,包括未运行中的。
sudo docker logs CONTAINER ID/NAME #如未查看到刚才运行的容器,则用容器 ID 或者名字查看启动日志排错。
7. 依次执行以下命令,制作镜像。
sudo docker commit fb2844b6**** nginxweb:v2 #commit 参数后添加容器 ID 和构建新镜像的名称和版本号。
sudo docker images #列出本地(已下载的和本地创建的)镜像。
8. 执行以下命令,将镜像推送至远程仓库。 默认推送到 Docker Hub。您需要先登录 Docker,为镜像绑定标签,将镜像命名为 Docker 用户名/镜像名:标签的格式,最终完成推送。
sudo docker login #执行后输入镜像仓库用户名及密码
sudo docker tag [镜像名]:[标签] [用户名]:[标签]
sudo docker push [用户名]:[标签]
推送完成后,即可使用浏览器登录 Docker Hub 官网 进行查看。