OpenEuler 下 Docker 安装、配置与测试实例
文章目录
- 前言
- 1. 环境准备
- 2. 下载 Docker
- 3.配置服务文件
- 4.配置加速器加速下载docker镜像
- 5. 验证 Docker 安装
前言
Docker 安装大致分为包管理器安装、脚本安装、离线手动安装、容器编排工具安装、桌面版安装等,每种安装各有特点,但涉及知识面不少,初次安装往往不成功,笔者采用离线手动安装的方式,虽然安装步骤较多,但比较可靠,而且学到更多的Docker安装知识,笔者每步都做了测试,希望对读者有帮助。
1. 环境准备
1、宿主机win10
2、VMware Workstation pro17
3、安装1个虚拟机OpenEuler 24.03
2. 下载 Docker
采用离线安装的方式,
OpenEuler系统下先安装下载工具wget,然后选择安装的docker的版本,下载地址:
https://download.docker.com/linux/static/stable/如图所示。
# wget -P /opt https://download.docker.com/linux/static/stable/x86_64/docker-20.10.23.tgz
# tar zxvf docker-20.10.23.tgz
# cp docker/* /usr/bin/
# vim /etc/systemd/system/docker.service (创建配置文件)
3.配置服务文件
在docker.service配置文件中,复制如下内容:
这段配置是用于 Linux 系统中的 systemd 服务管理器的 Docker 服务单元文件。下面是对每个部分的注释和解释:
[Unit]
Description=Docker Application Container Engine
# 描述服务单元,这里是 Docker 应用容器引擎。Documentation=https://docs.docker.com
# 提供服务单元的文档链接,这里是 Docker 官方文档的 URL。After=network-online.target firewalld.service
# 指定服务依赖,Docker 服务将在 network-online.target(网络在线)和 firewalld.service(防火墙服务)之后启动。Wants=network-online.target
# 指定服务依赖,Docker 服务想要 network-online.target(网络在线)先启动,但不是强制等待。[Service]
Type=notify
# 设置服务启动类型为 notify,意味着服务在启动时会通知 systemd 它已经准备好接收请求。ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=127.0.0.1
# 定义启动命令,这里是启动 dockerd 服务,并禁用 SELinux 安全策略,允许从本地的不安全仓库拉取镜像。ExecReload=/bin/kill -s HUP $MAINPID
# 定义重新加载服务时执行的命令,这里是发送 HUP 信号给主进程,使服务重新加载配置。LimitNOFILE=infinity
# 设置进程可以打开的文件描述符的数量上限为无限大。LimitNPROC=infinity
# 设置用户可以创建的进程数量上限为无限大。LimitCORE=infinity
# 设置核心文件(core dump)的大小上限为无限大。TimeoutStartSec=0
# 设置服务启动超时时间为 0 秒,即不设置超时。Delegate=yes
# 允许服务文件中的某些设置被传递给执行的进程。KillMode=process
# 设置杀死服务的方式为仅杀死主进程,不杀死子进程。Restart=on-failure
# 设置服务在失败时重启。StartLimitBurst=3
# 设置在 StartLimitInterval 指定的时间内,允许启动失败的次数。StartLimitInterval=60s
# 设置一个时间窗口,用于限制服务启动失败的次数。[Install]
WantedBy=multi-user.target
# 指定在 multi-user.target(多用户目标)时,这个服务单元应该被启动。
这个单元文件配置了 Docker 服务的基本行为,包括服务的启动、重启策略、资源限制等。通过这个配置,系统管理员可以控制 Docker 服务的运行方式。
4.配置加速器加速下载docker镜像
vim /etc/docker/daemon.json
配置内容如图所示:
执行如下命令,分别为docker服务授权可写权限,同时启动docker服务,并且开设置开机即启动服务,最后显示显示docker版本信息。
# chmod +x /etc/systemd/system/docker.service
# systemctl daemon-reload
# systemctl start docker
# systemctl enable docker
# docker --version
Docker version 20.10.23, build 7155243
5. 验证 Docker 安装
docker run hello-world
如果输出了 hello-world 的信息,说明 Docker 安装成功。