无网不惧,轻松上手,openEuler系统离线部署Docker全攻略!

大家好!我是一个热衷于分享IT技术的up主。在这个公众号里,我将为大家带来最新、最实用的技术干货,从编程语言到前沿科技,从软件开发到网络安全。希望通过我的分享,能够帮助更多的小伙伴提升技术水平,共同成长!欢迎关注,一起探索科技的魅力吧!

在许多企业环境中,网络访问受限或出于安全考虑无法直接连接互联网,这使得在这些环境中安装和部署软件变得更加复杂。为了应对这些挑战,离线部署Docker成为一种实用的解决方案。本文将详细介绍如何在欧拉系统openEuler上进行Docker的离线部署,以便在无网络连接的情况下依然能够顺利使用Docker进行容器化管理。

关于openEuler

openEuler是一个由华为主导并开源的Linux发行版,旨在为企业级应用提供高性能、高安全性和高稳定性的操作系统平台。openEuler是一个由华为主导并开源的Linux发行版,旨在为企业级应用提供高性能、高安全性和高稳定性的操作系统平台。作为一个社区驱动的项目,openEuler不仅继承了Linux的开放性和灵活性,还集成了多种优化和增强功能,特别是在云计算、大数据、人工智能等领域表现出色。

openEuler官网

部署最新Docker版本

本次案例使用的是openEuler 24.03的版本,如下图所示:

查看版本信息

关于openEuler系统的部署请查看官方的文档[1],有详细的教程文章。

下载Docker二进制离线包

下图展示了Docker官方提供的二进制包下载页面,可以用于进行Docker的离线安装。通过使用这些官方提供的二进制包,即使在无法访问互联网的环境中,依然能够顺利完成Docker的部署。

Docker二进制软件包

本案了采用dockr-27.0.3的版本进行部署,通过下面的命令进行下载:

 wget https://download.docker.com/linux/static/stable/x86_64/docker-27.0.3.tgz

解压文件

首先,将下载好的Docker二进制安装包拷贝到目标系统上,然后使用tar命令解压缩这些文件。以下命令展示了如何完成这一步:

tar -zxvf docker-27.0.3.tgz

这条命令会将Docker的二进制文件解压缩到当前目录下,解压后的文件包括Docker守护进程、客户端、以及相关的命令行工具。如下图所示:

解压后的目录

把文件复制到/usr/bin/目录下

完成解压缩后,我们需要将这些文件移动到系统的标准可执行文件目录中,以便系统能够正确调用Docker命令:

cp docker/* /usr/bin/

创建Docker服务文件

使用systemd来管理Docker服务是确保其开机自启动和便捷控制的最佳实践之一。创建一个名为docker.service的systemd服务文件。这个文件通常位于/usr/lib/systemd/system/目录下:

vim /usr/lib/systemd/system/docker.service

在文件中添加以下内容  :

[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

为了使新的服务文件生效,需要重新加载systemd的配置:

systemctl daemon-reload

启动并启用Docker服务

  • 启动Dcoker服务
systemctl start docker
  • 检查Docker服务状态,确保其正常运行:
systemctl status docker

允许上述命令后,输入如下图结果:

检查Docker服务情况
  • 设置Docker服务开机自启动
systemctl enable docker

验证Docker安装

通过以下命令验证Docker是否正确安装和运行:

docker --version

执行完上述命令后,输出如下结果:

通过上述返回的信息看到Docker已经正确安装好了。运行一个简单的Docker容器,验证Docker是否正常工作 :

docker run -d nginx

运行上述命令出现如下图结果,则说明Docker已成功安装并正常运行。

总结

通过以上步骤,我们实现了在欧拉系统上离线部署Docker。尽管离线环境限制了直接从网络获取软件包的能力,但通过提前准备好所需的安装包和依赖,我们依然可以顺利完成Docker的安装和部署。

参考文档[1]

官方的文档: https://docs.openeuler.org/zh/docs/24.03_LTS/docs/Installation/%E5%AE%89%E8%A3%85%E5%87%86%E5%A4%87.html


相关推荐

  • 为什么 JDK9 把 String 中 char 数组改成了 byte 数组?
  • 全球电脑蓝屏崩溃,为何中国没事?周鸿祎:因 90% 用 360 软件!
  • 天津大学等提出首个「缸中大脑」控制机器人!脑机接口技术取得新突破
  • 长上下文能力只是吹牛?最强GPT-4o正确率仅55.8%,开源模型不如瞎蒙
  • 马斯克19天建成世界最强AI集群!10万块H100「液冷怪兽」即将觉醒
  • 谷歌AI天气「神算」登Nature:30秒模拟22天天气,效率暴涨10万倍!
  • Llama 3.1磁力链提前泄露!开源模型王座一夜易主,GPT-4o被超越
  • 5 个 Pandas 超级好用的隐藏技巧
  • 7k star!斯坦福开源学术研究神器!storm
  • 人民大学通报:教师王贵元猥亵女生情况属实,开除党籍、撤销教授职称开除!人大大王贵元教授性骚扰且强制猥亵我,并要求与我发生性关系”
  • 京东健康·全球医疗AI创新大赛火热进行中,立即参与,共创医疗新纪元!
  • 开源仅 1 天就斩获近万星!超越 RAG、让大模型拥有超强记忆力的 Mem0 火了!
  • 史上最全 Git 图文教程,没有之一
  • 粗看最近爆火的mem0个性化轻量级框架:兼谈多模态数据的tokenizer
  • 下半年面试难度太大了...
  • 是时候丢掉 BeanUtils 了!
  • ECCV 2024|盲视频去闪烁通用方法BlazeBVD来了,美图&国科大联合提出
  • 无限生成视频,还能规划决策,扩散强制整合下一token预测与全序列扩散
  • 真相了!大模型解数学题和人类真不一样:死记硬背、知识欠缺明显,GPT-4o表现最佳
  • 神经网络也有空间意识!学会在Minecraft创建地图,登上Nature子刊