Fork me on GitHub

使用nginx配置本地yum 源

yum服务器IP地址:192.168.1.9

测试服务器地址:192.168.1.4

  一、安装搭建仓库所需软件

    1、配置nginx 源

vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

    2、安装nginx

yum install nginx -y 

    3、启动nginx并设置开机自启

systemctl start nginx
systemctl enable nginx

    4、安装 createrepo

yum install -y createrepo

  二、创建yum 仓库

mkdir /usr/share/nginx/html/yum && createrepo /usr/share/nginx/html/yum

  三、将rpm 包导入到仓库目录下

    1、这里直接将本地的base源里的文件导入在yum目录下

cp /misc/cd/Packages/zziplib-utils-0.13.62-5.el7.x86_64.rpm /usr/share/nginx/html/yum/

    2、重新创建createrepo 仓库

createrepo /usr/share/nginx/html/yum

注:每次新导入包后都要进行重新 createrepo 操作,yum源所在的目录必须是可写的

    3、自此已经可以作为yum源了,在需要配置的服务器上新建yum源

vim /etc/yum.repos.d/*.repo 
[local-epel1]
name=local yum
baseurl=http://192.168.1.9/yum
gpgcheck=0

注:*这里是自定义的名字,所以我这里写了*  

  四、使用虚拟主机,通过虚拟主机访问本地的yum源

vim /etc/nginx/conf.d/yum.conf
server {
        listen 80;
        server_name www.yum.com;
        root /usr/share/nginx/html/yum;

        location / {
        autoindex on;
        autoindex_localtime on;
        autoindex_exact_size off;
        }
}

  五、重启nginx服务

nginx -s stop
#关闭nginx服务
nginx
开启nginx服务

或者

systemctl restart nginx

systemctl 可以管理systemctl 开启的nginx ,但不能关闭直接通过nginx开启的服务

  六、测试访问

    1、修改Windows本地hosts

C:\Windows\System32\drivers\etc\hosts

注:由于测试的yum源所在的域名是我虚构的,直接访问是解析不了的,所以只能修改本地的hosts文件

    2、通过Windows查看yum 源

     3、修改测试服务器的yum 源为刚刚自定义的源

cat > /etc/yum.repos.d/local.repo << EOF
> [local-epel]
> name=local yum
> baseurl=http://www.yum.com
> gpgcheck=0
> enabled=1
> EOF

一样要修改hosts文件,不然解析不了

vim /etc/hosts

192.168.1.9 www.yum.com

    4、清理之前的yum源

yum clean all

    5、列出yum源

yum repolist
Loaded plugins: fastestmirror
local-epel                                                                               | 2.9 kB  00:00:00     
local-epel/primary_db                                                                    | 2.4 kB  00:00:00     
Determining fastest mirrors
repo id                                              repo name                                            status
local-epel                                           local yum                                            1
repolist: 1

这里可以看见只有一个,为了节省时间,导入rpm包到参考的时候我就放了一个

 

看不懂第四步的可以参考我这个博客:通过nginx制作类似阿里云镜像下载的网站

 

posted @ 2021-06-02 17:59  Alex-Lzy  阅读(3596)  评论(0编辑  收藏  举报