手工部署docker-九游平台
简介
本文介绍了如何在华为云上使用弹性云服务器的linux实例手工部署docker,并提供了docker常用操作及简单的镜像制作过程。
术语 |
解释 |
---|---|
docker |
docker是开发人员和系统管理员使用容器开发、部署和运行应用程序的平台。 |
镜像 |
docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。 |
容器 |
镜像(image)和容器(container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。 |
该指导以centos 7.5 64bit(40gib)、debian 12.0.0 64bit、ubuntu 22.04操作系统为例,docker要求64位的系统且内核版本至少为3.10。

您还可以选择solution as code一键式部署方式自动部署docker swarm集群,详细内容请参见。
前提条件
部署docker
请根据当前的操作系统,查看并执行对应的操作步骤。
- 登录弹性云服务器。
- 添加yum源。
yum install epel-release -y
yum clean all
- 安装yum-util。
yum install -y yum-utils device-mapper-persistent-data lvm2
- 设置docker yum源。
yum-config-manager --add-repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's download.docker.com mirrors.huaweicloud.com/docker-ce ' /etc/yum.repos.d/docker-ce.repo
- 安装并运行docker。
yum -y install docker-ce
systemctl enable docker
systemctl start docker
- 检查安装结果。
docker --version
回显如下类似信息,表示docker安装成功。
docker version 26.1.4, build 5650f9b
- 登录弹性云服务器。
- 更新软件包列表。
sudo apt update
- 安装docker所需依赖包。
sudo apt-get -y install ca-certificates curl
- 创建/etc/apt/keyrings目录,并下载docker的官方gpg密钥到该目录。
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fssl http://mirrors.huaweicloud.com/docker-ce/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a r /etc/apt/keyrings/docker.asc
- 将docker仓库添加到系统的软件源列表。
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] http://mirrors.huaweicloud.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 update
- 安装并运行docker。
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
- 查看docker版本信息。
docker -v
回显如下类似信息,表示docker安装成功。
docker version 27.5.1, build 9f9e405
- 登录弹性云服务器。
- 更新软件包列表。
sudo apt-get update
- 安装docker所需依赖包。
sudo apt-get -y install ca-certificates curl
- 创建/etc/apt/keyrings目录,并下载docker的官方gpg密钥到该目录。
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fssl https://mirrors.huaweicloud.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a r /etc/apt/keyrings/docker.asc
- 将docker仓库添加到系统的软件源列表。
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.huaweicloud.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
- 安装并运行docker。
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl start docker
sudo systemctl enable docker
- 查看docker版本信息。
docker -v
回显如下类似信息,表示docker安装成功。
docker version 27.5.1, build 9f9e405
配置镜像加速器

- “华北-乌兰察布一”、“亚太-雅加达”、“拉美-墨西哥城一”、“拉美-墨西哥城二”和“拉美-圣保罗一”区域不支持该功能,如需使用,请切换到其他区域。
- 通过docker pull命令下载docker镜像时,往往会因为网络原因而需要很长时间,甚至可能因超时而下载失败。建议在拉取镜像前先参考以下方法配置镜像加速器,再进行后续操作。
- 华为云不会强制用户在安装好docker后,必须要配置加速器。但若是在用户生产环境中,建议提前配置好加速器,以免后续再配置时,需要重启服务,导致生产环境停服。
- 登录。
- 在左侧导航栏选择“镜像资源 > 镜像中心”。
- 单击“镜像加速器”,在弹框中找到“加速器地址”,单击
,将加速器地址复制到剪切板。
图1 镜像加速器地址 - 登录弹性云服务器。
- 创建并编辑/etc/docker/daemon.json文件(如果文件不存在,则创建)。
vi /etc/docker/daemon.json
- 在该文件内添加如下内容:
{ "registry-mirrors": ["加速器地址"] }
- 按esc键退出编辑模式,并输入:wq保存后退出。
- 重启docker使配置生效。
systemctl restart docker
- 执行以下命令,当registry mirrors字段的地址为加速器的地址时,说明加速器已经配置成功。
docker info图2 registry mirrors信息
docker基本用法
- docker进程管理。
- 运行docker
systemctl start docker
- 停止docker
systemctl stop docker
- 重启docker
systemctl restart docker
- 运行docker
- 镜像管理。
- 拉取镜像。此处以apache和centos官方镜像为例。
docker pull httpd
docker pull centos
- 查看已有镜像
docker images
- 强制删除镜像
docker rmi centos
- 拉取镜像。此处以apache和centos官方镜像为例。
- 容器管理。
- 创建一个容器并运行。
docker run -it -d -p 80:80 --name datahttpd -v /data/:/var/www/httpd/ httpd
参数说明如下:
- -i:以交互模式运行容器,通常与-t同时使用。
- -t:为容器重新分配一个伪输入终端,通常与-i同时使用。
- -d:后台运行容器,并返回容器id。
- -p:端口映射,格式为“宿主机端口:容器端口”。
- --name:为容器指定一个名称。
- -v:把宿主机上的一个目录挂载到镜像里,格式为“宿主机目录:镜像内挂载的路径”,必须为绝对路径。
上述参数说明中的宿主机表示所创建的弹性云服务器实例。
示例命令表示:使用镜像httpd,以交互模式启动一个容器,将容器的80端口映射到宿主机的80端口,宿主机的目录/data映射到容器的/var/www/httpd目录,并返回容器id。
- 查看容器启动情况。
docker ps -a
- 在浏览器输入弹性云服务器所绑定的弹性公网ip,访问测试容器运行情况。出现以下内容表示运行成功。
- 创建一个容器并运行。
镜像制作
通过dockerfile定制一个简单的nginx镜像。
- 创建一个名为dockerfile的文件。
mkdir mynginx
cd mynginx
touch dockerfile
- 编辑dockerfile。
vim dockerfile
增加文件内容如下:
from nginx run echo '' > /usr/share/nginx/html/index.html
dockerfile指令介绍如下。以下仅介绍简单指令,如需了解更多,请参见官方网站。
- from语句:表示使用nginx镜像作为基础镜像,一个dockerfile中from是必备的指令,并且必须是第一条指令。
- run语句:格式为run <命令>,表示执行echo命令,在显示器中显示一段“hello, docker!”的文字。
- 构建镜像。
docker build -t nginx:v3 .
- -t nginx:v3:指定镜像的名称和版本。
- .:指定上下文路径,镜像构建命令将该路径下所有的内容打包给docker引擎帮助构建镜像。
- 查看部署的nginx镜像,版本为v3。
docker images
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨