华为云欧拉操作系统的服务器实例中手工部署 Docker

一、实验准备

点击链接开始实验

需要先登录或注册账号

https://lab.connect.huaweicloud.com/experiment-detail_2417

右键控制台,无痕模式打开控制台

找到弹性云服务ECS

点击远程登录

立即登录

输入密码

二、安装并部署docker

查看当前系统版本,openEuler 是基于开源技术的开放的企业级Linux操作系统。

复制代码
cat /etc/system-release

下载docker包并解压

复制代码
wget https://sandbox-experiment-files.obs.cn-north-4.myhuaweicloud.com/2417/docker-18.09.9.tgz

tar zxf docker-18.09.9.tgz

移动解压后的文件夹到/usr/bin,写入docker.service

复制代码
mv docker/* /usr/bin

cat >/usr/lib/systemd/system/docker.service <<EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF

启动 Docker 并设置开机自启,并查看docker版本

复制代码
systemctl start docker
systemctl enable docker
docker version

三、镜像与容器管理

使用docker拉取指定镜像,创建容器并运行,并测试容器运行情况。

拉取镜像:此处以Apache和CentOS官方镜像为例,由于国内禁止了docker官方镜像源,此处指定华为云官方镜像。

先修改"/etc/docker/daemon.json"文件(如果没有,可以手动创建)

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

在文件内添加以下内容:

复制代码
{
    "registry-mirrors": [ "https://0cf850bb9480f3170f2dc01234ec1ca0.mirror.swr.myhuaweicloud.com" ]
}

按 ESC 键,输入:wq保存并退出。

再输入以下命令重启docker,并直接拉取httpd:

复制代码
systemctl restart docker

docker pull httpd

用已有tar包方式拉取centos镜像,首先tar下载到ECS中:

复制代码
wget https://sandbox-experiment-files.obs.cn-north-4.myhuaweicloud.com/1911/centos.tar

使用以下命令将centos镜像恢复,然后查看docker镜像:

复制代码
docker load -i centos.tar

docker images

创建一个容器并运行,然后查看容器启动情况

复制代码
docker run --privileged -it -d -p 80:80 --name datahttpd -v /data/:/var/www/httpd/ httpd

使用镜像httpd,以交互模式启动一个容器,将容器的80端口映射到宿主机的80端口,宿主机的目录/data映射到容器的/var/www/httpd目录,并返回容器ID。

参数说明如下:

-i:以交互模式运行容器,通常与-t同时使用。

-t:为容器重新分配一个伪输入终端,通常与-i同时使用。

-d:后台运行容器,并返回容器ID。

-p:端口映射,格式为"宿主机端口:容器端口"。

--name:为容器指定一个名称。

-v:把宿主机上的一个目录挂载到镜像里,格式为"宿主机目录:镜像内挂载的路径",必须为绝对路径。

在浏览器输入弹性云服务器所绑定的弹性公网IP,将出现以下内容

相关推荐
戴为沐17 小时前
Linux内存扩容指南
linux
zylyehuo1 天前
Linux 彻底且安全地删除文件
linux
用户805533698032 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297912 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Patrick_Wilson2 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy3 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭3 天前
运行你的第一个Docker容器
后端·docker·容器
Web3探索者3 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo4 天前
Linux系统中网线与USB网络共享冲突
linux