openEuler22.03 LTS 真 · 离线安装 docker docker-compose

打印 上一主题 下一主题

主题 1044|帖子 1044|积分 3132

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本文使用:

openEuler22.03 LTS SP4,docker24.0.7,docker-compose v2.23.1

1、什么是 openEuler?

openEuler 是一个开源操纵体系,由中国开源软件基金会主导,华为深度加入,面向服务器、桌面和嵌入式等领域,为用户提供安全、稳定、易用的操纵体系平台。 最紧张是国产的!!!
近期centos在 2024-06-30 停止维护,许多就提出来迁徙到国产操纵体系乃至部分地区已经下发红头文件责令更换成国产操纵体系
2、原有摆设架构

使用的是centos7.9,摆设了docker以及docker-compose工具,需要迁徙到openEuler!
由于摆设的机器都是无外网访问权限(为啥没外网就不说了)所有整出需要离线安装着操纵。
3、其他论坛和帖子离线安装方案 - 宣告失败

在openEuler官方查找了两篇资料是使用二进制文件安装和rpm安装,按照步骤安装是启动不了
3.1、先是找到第一篇 - 失败
这篇跟其他搜到的帖子都一样,许多、许多、许多。也不知道谁是搬谁的!!!
openEuler离线安装docker - O&M 运维 - openEuler 论坛
自行下载了docker tgz文件,按照步骤举行,死活是启动不了,本菜鸡只能小玩下java的是找不到缘故原由,详细问题忘记了文章是后面写的没记录,大概就是找不到docker对应信息还是什么,还搞了好久无奈放弃该方案寻求另外解决办法
3.2、后面看到是rpm安装的第二篇 - 失败
openeuler 22.03离线安装docker26版本 - Installation 安装摆设 - openEuler 论坛
也根据文章下载rpm安装包,无奈的来了安装docker依赖libcgroup-0.41-19.el8.x86_64.rpm,行那就先装咯,装完很棒没有问题,在安装container-selinux又依赖与python3,我只能麻了不绝无线依赖
   rpm -i policycoreutils-python-utils-2.9-16.el8.noarch.rpm
  warning: policycoreutils-python-utils-2.9-16.el8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 8483c65d: NOKEY
  error: Failed dependencies:
  /usr/libexec/platform-python is needed by policycoreutils-python-utils-2.9-16.el8.noarch
  python3-policycoreutils = 2.9-16.el8 is needed by policycoreutils-python-utils-2.9-16.el8.noarch
  那么多机子不可能一个个这么去装,无奈宣告失败!
后面转头一想,我本地搭个有网的openEuler服务器把对应的安装包和所有的依赖下载下来再扔上去安装,可行试着搞,下面正式进而docker离线安装
4、安装文件下载

附件内包含本文说到的docker_rpms.tar.gz 和 docker-compose-linux-x86_64
openEuler离线docker摆设文件: 阿里云盘分享
5、openEuler离线安装docker

5.1、先是window装了个docker desktop 跑了个openEuler22.03 LTS SP4 架构x86_64很紧张不然会二进制文件架构不匹配
5.2、再将docker 镜像仓库repos.d修改成对应要使用的版本(这里就深入说了大概说下)
我在官方还是哪里看到说openEuler22是对应centos8的,这里就对应centos8的,我的是这样的
  1. [root@410b2b823b19 docker_rpms]# cat /etc/yum.repos.d/docker-ce.repo
  2. [docker-ce-stable]
  3. name=Docker CE Stable - x86_64
  4. baseurl=https://download.docker.com/linux/centos/8/x86_64/stable/
  5. enabled=1
  6. gpgcheck=1
  7. gpgkey=https://download.docker.com/linux/centos/gpg
复制代码
5.3、然后将所需要安装docker的所有依赖都下载到指定目次下,
  1. [root@410b2b823b19 docker_rpms]# yumdownloader --resolve --destdir=/tmp/docker_rpms docker-ce-24.0.7-1.el8
复制代码

下载出这么多rpm,然后里面有docker26的跟containerd.io有两个版本,得删除了不然会辩论
5.4、然后再把这些安装包扔上去实行
这里说下因为之前有用其他方式安装过,得先卸载干净了再安装,不然会报错喔,像我这样。
(缘故原由是文件是ARM aarch64 架构编译的,而体系是x86_64 架构的)
fork/exec /usr/local/bin/docker-proxy: exec format error
  1. # 卸载所有已安装的 Docker 相关包
  2. yum remove docker-ce docker-ce-cli containerd.io
  3. # 删除任何残留的 Docker 配置文件和数据目录
  4. rm -rf /var/lib/docker
  5. rm -rf /var/lib/containerd
  6. rm -rf /etc/docker
  7. rm -f /etc/systemd/system/docker.service
  8. rm -f /etc/systemd/system/docker.socket
  9. rm -f /usr/lib/systemd/system/docker.service
  10. rm -f /usr/lib/systemd/system/docker.socket
  11. # 删除缓存以确保没有旧的包
  12. yum clean all
  13. # 重启系统(可选)
  14. reboot
复制代码
5.5、实行(我是放在根目次下)
  1. # 解压docker所依赖的安装包
  2. tar -xzvf docker_rpms.tar.gz
  3. # disablerepo禁用所有仓库 本地安装   --skip-broken 跳过已安装包(避免冲突)
  4. yum --disablerepo=* localinstall /docker_rpms/*.rpm --skip-broken
  5. #安装过程会提示是否安装docker
  6. 输入:y    回车确认即可
  7. # 启动docker
  8. systemctl start docker
  9. # 查看启动状态(安装完默认未启动,需要手动执行启动命令) 
  10. systemctl status docker  
  11. # 开机自启
  12. systemctl enable docker
  13. # 查看docker版本
  14. docker -v
  15. ############## 以上完成安装docker ##############
复制代码
6、openEuler离线安装docker-compose

6.1、docker-compose-linux-x86_64文件复制到 /usr/local/bin 目次下
  1. # 修改名字为 docker-compose
  2. sudo mv /usr/local/bin/docker-compose-linux-x86_64 docker-compose
  3. # 给予执行权限
  4. sudo chmod +x /usr/local/bin/docker-compose
  5. # 查看docker-compose版本
  6. docker-compose -v
  7. ############## 以上完成安装docker-compose ##############
复制代码
7、我到这里就成功咯,目前按照这个方案摆设了三台都没有问题


8、其他踩坑

因为在这之前有另外项目需要迁徙openEuler的就临时申请了网络安装了docker
项目是超级轻度依赖数据库,就搞了docker-compose安装mysql8.0.38
重点:
8.1、运行起来后发现mysql不绝cpu飙高的问题,原以为是版本的问题换了5.7发现还是飙高,也琢磨了好久,反正用的少就摆烂不搞mysql了直接换成mariadb10.2,直接在docker-compose换下image版本就跑起来,高度兼容的!
8.2、因为摆设的机器是客户提供的,硬件类不是同一的,然而使用高版本mysql就会出现以下问题。我当时用的是mysql8.0.32就出现这个问题,后面换成5.7.44就行了,如果你再不行就换成mariadb10.2

------------------------------------------------- 竣事 -------------------------------------------------
另外说明下服务器没有网络,所要使用的镜像都是从另外有网的服务器团体打包上传的!!!
情况就是这么个情况,问题就是这么个问题,好吧!到这里先~
我看论坛都没有这内容的贴子,本菜鸟也是第一次发帖子(●'◡'●)
本文有附带另外论坛帖子,如果侵权或者其他违规请接洽我删除!!!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

圆咕噜咕噜

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表