OpenEuler 下 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/如图所示。

c 复制代码
# 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配置文件中,复制如下内容:

c 复制代码
#这段配置是用于 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版本信息。

c 复制代码
# 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 安装

bash 复制代码
docker pull hello-world

如果输出了 hello-world 的信息,说明 Docker 安装成功。

相关推荐
梁萌15 分钟前
Docker中的分层(Layer)
运维·docker·容器
IT 古月方源17 分钟前
关于 VRRP的详解
运维·网络·tcp/ip·网络安全·智能路由器
檀越剑指大厂17 分钟前
【Linux系列】sed命令的深入解析:如何使用sed删除文件内容
linux·运维·服务器
Dusk_橙子34 分钟前
在K8S中,Ingress该如何使用?
容器·kubernetes·flask
~央千澈~1 小时前
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
docker·vim·镜像
不爱学英文的码字机器1 小时前
深入理解 Linux 文件时间戳:atime、mtime 和 ctime 的概念及应用
linux·运维·服务器
迷迭所归处2 小时前
Linux系统 —— 进程控制系列 - 进程的等待:wait 与 waitpid
linux·运维·服务器
Charlie__ZS2 小时前
Docker安装
运维·docker·容器
yulingfeng592 小时前
Centos7 yum 报错“Could not resolve host: mirrorlist.centos.org; Unknown error“
linux·运维·centos
海域云赵从友2 小时前
香港 GPU 服务器托管引领 AI 创新,助力 AI 发展
运维·服务器·人工智能