当前位置: 首页 > article >正文

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
配置内容如图所示:
{
"registry-mirrors": ["https://gg3gwnry.mirror.aliyuncs.com"]
}

执行如下命令,分别为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 pull hello-world

如果输出了 hello-world 的信息,说明 Docker 安装成功。
在这里插入图片描述


http://www.kler.cn/a/391317.html

相关文章:

  • MySql结合element-plus pagination的分页查询
  • GISBox VS ArcGIS:分别适用于大型和小型项目的两款GIS软件
  • 一文详解java的数据类型
  • 前端知识点---Javascript的对象(Javascript)
  • Java项目实战II基于微信小程序的个人行政复议在线预约系统微信小程序(开发文档+数据库+源码)
  • 以往运维岗本人面试真题分享
  • [数组二分查找] 0153. 寻找旋转排序数组中最小值
  • Vite初始化Vue3+Typescrpt项目
  • C#自定义特性-SQL
  • 如何在 Ubuntu 上 部署 OceanBase
  • CosyVoice文本转语音:轻松创造个性化音频
  • 【LeetCode每日一题】——LCR 106.判断二分图
  • 自动化爬虫DrissionPage
  • golang 实现bitcoin core: bitcoin 椭圆曲线的“生成元”设置
  • 计算机网络:运输层 —— TCP/IP运输层中的两个重要协议
  • 基于Ubuntu2410脚本搭建OpenStack-D版
  • SSE与WebSocket与MQTT
  • STM32WB55RG开发(3)----生成 BLE 程序连接手机APP
  • Linux开发讲课49--- Linux 启动过程分析
  • 刘铁猛C#入门 024 类的声明,继承和访问控制
  • 微澜:用 OceanBase 搭建基于知识图谱的实时资讯流的应用实践
  • Nebula NGQL语言的使用 一
  • LabVIEW 实现 find_nearest_neighbors 功能(二维平面上的最近邻查找)
  • vue-h5:在h5中实现相机拍照加上身份证人相框和国徽框
  • 智能科技赋能金融决策:中阳科技的数据分析解决方案
  • [免费]SpringBoot+Vue3校园宿舍管理系统(优质版)【论文+源码+SQL脚本】