yum仓库的制作与使用

news2024/11/15 11:56:58

目录

前言:

1 查看系统内核  

2 获取网络源

3 搭建yum网络仓库

4 rpm包的下载

4.1 将rpm包下载至本地

4.2 对下载的rpm包进行备份

5 制作本地yum源

5.1 软件仓库制作工具createrepo

5.2 使用createrepo创建本地yum仓库

6 搭建docker本地仓库


前言:

此次实验使用的系统为 openEuler 22.03,制作docker-ce的yum仓库。

问题来了yum仓库的制作首先前提是得有rpm软件包为基础。

这个时候得去哪里获取呢?

1 查看系统内核  

这里能很清楚地看出来openEuler22.03他的Linux内核使用的为 Linux-5.10.0

同样RHEL 9 使用的内核也是 Linux-5,所以软件是互为通用的

[root@localhost yum.repos.d]# hostnamectl 
   Static hostname: n/a                                      
Transient hostname: localhost
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 052542e981c9468b9a0cc82cb54dccc9
           Boot ID: 874f2ac2da7a4c089bbc5ee2108e4816
    Virtualization: vmware
  Operating System: openEuler 22.03 (LTS-SP4)
            Kernel: Linux 5.10.0-216.0.0.115.oe2203sp4.x86_64
      Architecture: x86-64
   Hardware Vendor: VMware, Inc.
    Hardware Model: VMware Virtual Platform

2 获取网络源

阿里云镜像站icon-default.png?t=N7T8https://developer.aliyun.com/mirror/

此次使用的为阿里云的镜像源,搭建docker-ce软件的网络源,使用网络源将rpm包下载到本地并制作本地yum仓库

3 搭建yum网络仓库

[root@localhost yum.repos.d]# vim docker-ce.repo
[docker]
name=docker-ce
baseurl=https://mirrors.aliyun.com/docker-ce/linux/rhel/9/x86_64/stable/
gpgcheck=0

4 rpm包的下载

4.1 将rpm包下载至本地

yum 有一个选项是能将rpm包下载到当前目录:

--downloaddir   与 --downloadonly  配合使用

[root@localhost ~]# yum install docker-ce --downloaddir=/usr/local/src/docker --downloadonly

Last metadata expiration check: 0:26:30 ago on 2024年08月02日 星期五 15时42分17秒.
Dependencies resolved.
============================================================================================
 Package                         Architecture Version                    Repository    Size
============================================================================================
Installing:
 docker-ce                       x86_64       3:27.1.1-1.el9             docker        27 M
Installing dependencies:
 container-selinux               noarch       2:2.138-5.oe2203sp4        OS            33 k
 containerd.io                   x86_64       1.7.19-3.1.el9             docker        43 M
 docker-ce-cli                   x86_64       1:27.1.1-1.el9             docker       7.8 M
 fuse-overlayfs                  x86_64       1.12-1.oe2203sp4           EPOL          54 k
 fuse3                           x86_64       3.10.5-9.oe2203sp4         OS           111 k
 libslirp                        x86_64       4.7.0-2.oe2203sp4          OS            66 k
 slirp4netns                     x86_64       1.2.0-1.oe2203sp4          EPOL          43 k
Installing weak dependencies:
 docker-buildx-plugin            x86_64       0.16.1-1.el9               docker        14 M
 docker-ce-rootless-extras       x86_64       27.1.1-1.el9               docker       4.0 M
 docker-compose-plugin           x86_64       2.29.1-1.el9               docker        13 M
 fuse3-help                      x86_64       3.10.5-9.oe2203sp4         OS           8.9 k

Transaction Summary
============================================================================================
Install  12 Packages

Total download size: 109 M
Installed size: 423 M
YUM will only download packages for the transaction.
Is this ok [y/N]: y
Downloading Packages:
(1/12): docker-buildx-plugin-0.16.1-1.el9.x86_64.rpm        489 kB/s |  14 MB     00:28    
(2/12): docker-ce-cli-27.1.1-1.el9.x86_64.rpm               481 kB/s | 7.8 MB     00:16    
(3/12): docker-ce-27.1.1-1.el9.x86_64.rpm                   518 kB/s |  27 MB     00:52    
(4/12): docker-ce-rootless-extras-27.1.1-1.el9.x86_64.rpm   453 kB/s | 4.0 MB     00:09    
(5/12): container-selinux-2.138-5.oe2203sp4.noarch.rpm      104 kB/s |  33 kB     00:00    
(6/12): fuse3-3.10.5-9.oe2203sp4.x86_64.rpm                 1.3 MB/s | 111 kB     00:00    
(7/12): fuse3-help-3.10.5-9.oe2203sp4.x86_64.rpm            217 kB/s | 8.9 kB     00:00    
(8/12): libslirp-4.7.0-2.oe2203sp4.x86_64.rpm               1.3 MB/s |  66 kB     00:00    
(9/12): fuse-overlayfs-1.12-1.oe2203sp4.x86_64.rpm          193 kB/s |  54 kB     00:00    
(10/12): slirp4netns-1.2.0-1.oe2203sp4.x86_64.rpm           731 kB/s |  43 kB     00:00    
(11/12): docker-compose-plugin-2.29.1-1.el9.x86_64.rpm      489 kB/s |  13 MB     00:28    
(12/12): containerd.io-1.7.19-3.1.el9.x86_64.rpm            485 kB/s |  43 MB     01:31    
--------------------------------------------------------------------------------------------
Total                                                       1.2 MB/s | 109 MB     01:32     
retrieving repo key for OS unencrypted from http://repo.openeuler.org/openEuler-22.03-LTS-SP4/OS/x86_64/RPM-GPG-KEY-openEuler
OS                                                           15 kB/s | 3.0 kB     00:00    
Importing GPG key 0xB675600B:
 Userid     : "openeuler <openeuler@compass-ci.com>"
 Fingerprint: 8AA1 6BF9 F2CA 5244 010D CA96 3B47 7C60 B675 600B
 From       : http://repo.openeuler.org/openEuler-22.03-LTS-SP4/OS/x86_64/RPM-GPG-KEY-openEuler
Is this ok [y/N]: y
Key imported successfully
Complete!
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'yum clean packages'.

查看是否下载成功

4.2 对下载的rpm包进行备份

制作仓库之前首先需要对rpm包进行备份

[root@localhost docker]# cp /usr/local/src/docker/* /usr/local/src/docker-bak/
[root@localhost docker]# ls ../docker-bak/
containerd.io-1.7.19-3.1.el9.x86_64.rpm
container-selinux-2.138-5.oe2203sp4.noarch.rpm
docker-buildx-plugin-0.16.1-1.el9.x86_64.rpm
docker-ce-27.1.1-1.el9.x86_64.rpm
docker-ce-cli-27.1.1-1.el9.x86_64.rpm
docker-ce-rootless-extras-27.1.1-1.el9.x86_64.rpm
docker-compose-plugin-2.29.1-1.el9.x86_64.rpm
fuse3-3.10.5-9.oe2203sp4.x86_64.rpm
fuse3-help-3.10.5-9.oe2203sp4.x86_64.rpm
fuse-overlayfs-1.12-1.oe2203sp4.x86_64.rpm
libslirp-4.7.0-2.oe2203sp4.x86_64.rpm
slirp4netns-1.2.0-1.oe2203sp4.x86_64.rpm

5 制作本地yum源

5.1 软件仓库制作工具createrepo

[root@localhost docker]# yum install createrepo
Last metadata expiration check: 0:36:15 ago on 2024年08月02日 星期五 15时42分17秒.
Dependencies resolved.
=====================================================================================================================================================
 Package                               Architecture                    Version                                     Repository                   Size
=====================================================================================================================================================
Installing:
 createrepo_c                          x86_64                          0.17.6-3.oe2203sp4                          OS                          133 k
Installing dependencies:
 drpm                                  x86_64                          0.5.1-1.oe2203sp4                           OS                           56 k

Transaction Summary
=====================================================================================================================================================
Install  2 Packages

5.2 使用createrepo创建本地yum仓库

[root@localhost src]# ls docker
containerd.io-1.7.19-3.1.el9.x86_64.rpm         docker-ce-cli-27.1.1-1.el9.x86_64.rpm              fuse3-help-3.10.5-9.oe2203sp4.x86_64.rpm
container-selinux-2.138-5.oe2203sp4.noarch.rpm  docker-ce-rootless-extras-27.1.1-1.el9.x86_64.rpm  fuse-overlayfs-1.12-1.oe2203sp4.x86_64.rpm
docker-buildx-plugin-0.16.1-1.el9.x86_64.rpm    docker-compose-plugin-2.29.1-1.el9.x86_64.rpm      libslirp-4.7.0-2.oe2203sp4.x86_64.rpm
docker-ce-27.1.1-1.el9.x86_64.rpm               fuse3-3.10.5-9.oe2203sp4.x86_64.rpm                slirp4netns-1.2.0-1.oe2203sp4.x86_64.rpm

[root@localhost src]# createrepo -v /usr/local/src/docker
16:23:53: Version: 0.17.6 (Features: DeltaRPM LegacyWeakdeps )
16:23:53: Signal handler setup
16:23:53: Thread pool ready
Directory walk started
16:23:53: Adding pkg: /usr/local/src/docker/docker-ce-cli-27.1.1-1.el9.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/container-selinux-2.138-5.oe2203sp4.noarch.rpm
16:23:53: Adding pkg: /usr/local/src/docker/docker-buildx-plugin-0.16.1-1.el9.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/slirp4netns-1.2.0-1.oe2203sp4.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/containerd.io-1.7.19-3.1.el9.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/libslirp-4.7.0-2.oe2203sp4.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/fuse3-3.10.5-9.oe2203sp4.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/fuse-overlayfs-1.12-1.oe2203sp4.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/docker-ce-27.1.1-1.el9.x86_64.rpm
16:23:53: Dir to scan: /usr/local/src/docker/.repodata
16:23:53: Adding pkg: /usr/local/src/docker/docker-compose-plugin-2.29.1-1.el9.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/docker-ce-rootless-extras-27.1.1-1.el9.x86_64.rpm
16:23:53: Adding pkg: /usr/local/src/docker/fuse3-help-3.10.5-9.oe2203sp4.x86_64.rpm
16:23:53: Package count: 12
Directory walk done - 12 packages
Temporary output repo path: /usr/local/src/docker/.repodata/
16:23:53: Creating .xml.gz files
16:23:53: Setting number of packages
Preparing sqlite DBs
16:23:53: Creating databases
16:23:53: Thread pool user data ready
Pool started (with 5 workers)
Pool finished
16:23:53: Generating repomd.xml
16:23:53: Old repodata doesn't exists: Cannot rename /usr/local/src/docker/repodata/ -> /usr/local/src/docker/repodata.old.2366.20240802162353.139730: No such file or directory
16:23:53: Renamed /usr/local/src/docker/.repodata/ -> /usr/local/src/docker/repodata/
16:23:53: Memory cleanup
16:23:53: All done

[root@localhost src]# ls docker
containerd.io-1.7.19-3.1.el9.x86_64.rpm         docker-ce-rootless-extras-27.1.1-1.el9.x86_64.rpm  libslirp-4.7.0-2.oe2203sp4.x86_64.rpm
container-selinux-2.138-5.oe2203sp4.noarch.rpm  docker-compose-plugin-2.29.1-1.el9.x86_64.rpm      repodata
docker-buildx-plugin-0.16.1-1.el9.x86_64.rpm    fuse3-3.10.5-9.oe2203sp4.x86_64.rpm                slirp4netns-1.2.0-1.oe2203sp4.x86_64.rpm
docker-ce-27.1.1-1.el9.x86_64.rpm               fuse3-help-3.10.5-9.oe2203sp4.x86_64.rpm
docker-ce-cli-27.1.1-1.el9.x86_64.rpm           fuse-overlayfs-1.12-1.oe2203sp4.x86_64.rpm

6 搭建docker本地仓库

将yum仓库源切换为本地制作的yum仓库

[root@localhost ~]# vim /etc/yum.repos.d/docker-ce.repo

[docker]
name=docker-ce
# baseurl=https://mirrors.aliyun.com/docker-ce/linux/rhel/9/x86_64/stable/
baseurl=file:///usr/local/src/docker
gpgcheck=0

重新加载yum仓库 

[root@localhost ~]# yum makecache

使用自己制作的本地仓库下载docker-ce 

成功启动并使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1976313.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Dash】使用 HTML 和 CSS 创建图表

一、Styling Your App The examples in the previous section used Dash HTML Components to build a simple app layout, but you can style your app to look more professional. This section will give a brief overview of the multiple tools that you can use to enhan…

Scalable Diffusion Models with Transformers(DIT)代码笔记

完整代码来源&#xff1a;DiT DiT模型主要是在diffusion中&#xff0c;使用transformer模型替换了UNet模型&#xff0c;使用class来控制图像生成。 根据论文&#xff0c;模型越大&#xff0c;patch size 越小&#xff0c;FID越小。 模型越大&#xff0c;参数越多&#xff0c;pa…

3.罗马数字转数字

3.罗马数字转数字 题目题目分析 题目 题目分析 基础思路是先想到键值对&#xff0c;然后遍历字符串利用键值对匹配来计算值&#xff0c;要注意处理IV&#xff0c;IX之类需要将当前处理字符与前一个字符进行比较。 class Solution { public:int romanToInt(string s) {//这个函…

项目负责人视角:结构化思考在竞赛中的力量

项目负责人视角&#xff1a;结构化思考在竞赛中的力量 前言结构化思考的定义与重要性结构化思考的五个关键步骤1. 明确问题2. 问题分解3. 优先级排序4. 制定行动计划5. 执行与监控 结构化思考的实际应用案例结语 前言 在这个充满挑战和机遇的时代&#xff0c;项目管理已成为企业…

Nero Lens 智图 - 适用于 iOS 和 iPadOS 的专业图片处理 App

首先是手机端的无损放大 App&#xff1a;Nero Lens 智图&#xff0c;适用于 iOS 和 iPadOS&#xff0c;不仅可以放大&#xff0c;还有多种 AI 图片增强功能。 使用这款 App 可以通过 AI 模型智能放大可达 400%&#xff0c;还有老照片去划痕、上色&#xff0c;抠图移除背景、照…

数论第四节:不定方程(习题)

文章目录 例1例2例3例4例5 例1 解下列不定方程&#xff1a; ( a ) 15 x 25 y 100 (a)15x25y100 (a)15x25y100 ( b ) 306 x − 360 y 630 (b)306x-360y630 (b)306x−360y630 (a)解: (15,25)5&#xff0c;且5|100&#xff0c;所以方程有解。 方程两边同时除以(15,24)&…

53 SSLVPN IP 接入

(1) 配置接口IP地址 # 根据组网图中规划的信息,配置各接口的IP地址,具体配置步骤如下。 <Device> system-view [Device] interface gigabitethernet 1/2/5/1 [Device-GigabitEthernet1/2/5/1] ip address 1.1.1.2 255.255.255.0 [Device-GigabitEthernet1/2/…

Unity获取Animator动画播放完成事件

整理了一些在日常经验中处理动画播放完成事件的方法 方法: 1.Dotween配合异步实现 2.状态机计时方法实现 3.原生动画行为方法实现 方法一&#xff1a;Dotween异步方法 using UnityEngine; using System.Threading.Tasks; using DG.Tweening;public class PlayerAnimAsync : M…

从Excel高手到SQL大师-解锁数据分析的无限潜力 -10分钟读懂职场必备技能

目录 Excel 和 SQL&#xff1a;看似相似却大不相同的数据处理利器Excel vs SQL&#xff1a;表面相似&#xff0c;本质迥异Excel&#xff1a;直观但受限的电子表格SQL&#xff1a;强大而灵活的数据库查询语言 从 Excel 到 SQL&#xff1a;跨越鸿沟Excel 数据筛选SQL 数据筛选 结…

MySQL:数据库权限与角色

权限 MySQL 的权限管理系统是保障数据库安全性的关键组件之一。它允许数据库管理员精确控制哪些用户可以对哪些数据库对象执行哪些操作。 自主存取控制 DAC&#xff08;DiscretionaryAccess Control)&#xff1a;用户对于不同的数据库对象有不同的存取权限&#xff0c;不同的…

Java并发编程中的FutureTask详解

Java并发编程中的FutureTask详解 1、核心特点2、基本用法2.1 包装 Callable 任务2.2 包装 Runnable 任务 3、注意事项 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; FutureTask 是 Java 并发包 java.util.concurrent 中的一个类&#xff0…

Trimble 电子水准仪数据传输与预处理

0 安装软件。 1 将设备传输线与电脑相连接。 2 运行软件&#xff0c;选择对应的设备&#xff0c;显示连接成功。 3 点击添加&#xff0c;选择工程文件&#xff0c;再点击打开&#xff08;可以选择多个&#xff09;。 4 点击Transfer All&#xff0c;数据会传输到对应路径。 5 查…

职场生存秘籍:16条黄金法则

作者简介&#xff1a;一名计算机萌新、前来进行学习VUE,让我们一起进步吧。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;我叫于豆豆吖的主页 写在前面 在这个瞬息万变的时代&#xff0c;职场不仅是实现个人价值与梦想的舞台&#xff0c;更是一…

操作列表(运用for循环)

1、遍历整个列表 1.1、使用for循环 对列表中的每个元素都执行相同的操作&#xff0c;这就需要使用到for循环。 例&#xff1a;运用fou循环&#xff0c;把列表中的元素依次打印出来 citys[beijing,jiangxi,chongqing] for city in citys:print(city) 输出很简单&#xff0c;…

Spring Boot 整合 Dubbo3 + Nacos 2.4.0【进阶】+ 踩坑记录

上一篇文章中&#xff0c;Spring Boot 整合 Dubbo3 Nacos 2.4.0 进行了简单的集成使用&#xff0c;此文简单进阶并记录踩坑日常&#xff1b; Nacos 2.4.0 增加鉴权的配置Nacos 2.4.0 配置 MySQLNacos2.4.0 的热更新Dubbo3 自动负载Dubbo3 的重试和超时机制踩坑记录 一、Nacos…

Spring - 统一返回数据格式

T04BF &#x1f44b;专栏: 算法|JAVA|MySQL|C语言 &#x1faf5; 今天你敲代码了吗 文章目录 1. 使用2. 字符串问题2.1 解决方法:2.2 问题分析 有时候后端返回的响应可能是String,Boolean之类的类型,但是我们希望响应将可能描述清除,如失败的原因等由于一次只能返回一个对象,因…

SpringBoot配置文件高级用法实战

❃博主首页 &#xff1a; 「码到三十五」 &#xff0c;同名公众号 :「码到三十五」&#xff0c;wx号 : 「liwu0213」 ☠博主专栏 &#xff1a; <mysql高手> <elasticsearch高手> <源码解读> <java核心> <面试攻关> ♝博主的话 &#xff1a…

2024年8月AI内容生成技术的现状与未来:从文生文到跨模态交互的全景分析

2024年8月AI内容生成技术的现状与未来&#xff1a;从文生文到跨模态交互的全景分析 大家好&#xff0c;我是猫头虎&#xff01;&#x1f680; 随着AI在内容生成领域的爆发式发展&#xff0c;从2022年末开始&#xff0c;AI生成技术已经走过了文生文&#xff08;AIGC&#xff09…

Elasticsearch VS Typesense! Elasticsearch未来会被其它搜索引擎取代吗?

近期网上流行一批新的搜索引擎&#xff0c;动不动就大言不惭&#xff0c;要跟龙头老大Elasticsearch比&#xff0c;想把Elasticsearch击败。 1. Typesense 太猖狂了&#xff0c;对Elasticsearch极为不敬 如近期炒作很猖狂的Typesense开源搜索引擎&#xff0c;一出来就急着挑战…

Study--Oracle-07-ASM常用维护操作(五)

一、ASM创建新的磁盘组 1、查看系统中可用的磁盘 set lines 150; col name for a35; col path for a35; select group_number,path, state, name, total_mb, free_mb from v$asm_disk; 2、磁盘组操作 创建磁盘组 create DISKGROUP DATADGV2 EXTERNAL REDUNDANCY DISK /dev…