前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Nexus代理yum、npm、pypi

使用Nexus代理yum、npm、pypi

原创
作者头像
Honest1y
修改2021-01-20 15:39:07
3.8K0
修改2021-01-20 15:39:07
举报
文章被收录于专栏:Kubernetes手记

一、Nexus介绍

生产环境中,一般不会允许所有服务器都能访问公网,理想的情况是有几台服务器作为访问代理,同时作为缓存服务器。当服务器中有所需包时通过内网获取,如无则通过公网获取同时在本地保存。

常用搭建私有yum源的方法是createrepo生成本地仓库,其它服务器通过http访问仓库。这种方法的弊端是如果当前仓库中没有所需软件包会导致安装失败,不会去其它源获取数据。

Nexus是一个强大的仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。

二、Nexus 3.x部署(On Linux)

2.1、下载源码包

代码语言:txt
复制
https://help.sonatype.com/repomanager3/download

2.2、解压

代码语言:txt
复制
$ tar zxf nexus-3.23.0-03-unix.tar.gz
$ mv nexus-3.23.0-03 sonatype-work /data
$ echo 'NEXUS_HOME="/data/nexus-3.23.0-03"' >> ~/.bashrc
$ echo 'run_as_user="root"' >> /data/nexus-3.23.0-03/bin/nexus.rc

2.3、服务配置

代码语言:txt
复制
$ vim /etc/systemd/system/nexus.service

[Unit]
Description=nexus service
After=network.target

[Service]
Type=forking
LimitNOFILE=65536
ExecStart=/data/nexus-3.23.0-03/bin/nexus start
ExecStop=/data/nexus-3.23.0-03/bin/nexus stop
User=root
Restart=on-abort

[Install]
WantedBy=multi-user.target

2.4、启动服务

代码语言:txt
复制
$ systemctl start nexus # 此处启动后,请耐心等待,netstat -tunlp 查看端口8081监听后继续

2.5、登录Nexus

代码语言:txt
复制
http://IP:8081/

查看密码

代码语言:txt
复制
$ cat /data/sonatype-work/nexus3/admin.password

三、Nexus配置代理仓库

3.1、yum

1、创建repository
代码语言:txt
复制
https://mirrors.tuna.tsinghua.edu.cn/centos/

创建完成后,此时 Repository 的状态为: Online - Ready to connect

2、客户端配置 Yum 文件
代码语言:txt
复制
$ vim /etc/yun.repos.d/CentOS-Base.rpeo
[Anchnet-Base]
name=Anchnet Mirrors
baseurl=http://mirrors.anchnet.com/repository/centos/$releasever/os/$basearch/
enabled=1
gpgcheck=0
3、安装测试

清理并重建 yum 缓存

代码语言:txt
复制
[root@k8s-master ~]# yum clean all && yum makecache
Loaded plugins: fastestmirror
Cleaning repos: Anchnet-Base
Cleaning up everything
Loaded plugins: fastestmirror
Anchnet-Base                                                                                                                                                      | 2.2 kB  00:00:00     
(1/4): Anchnet-Base/7/x86_64/group_gz                                                                                                                             | 153 kB  00:00:00     
(2/4): Anchnet-Base/7/x86_64/primary                                                                                                                              | 2.9 MB  00:00:03     
(3/4): Anchnet-Base/7/x86_64/other                                                                                                                                | 1.6 MB  00:00:02     
(4/4): Anchnet-Base/7/x86_64/filelists                                                                                                                            | 7.1 MB  00:00:11     
Determining fastest mirrors
Anchnet-Base                                                                                                                                                                 10070/10070
Anchnet-Base                                                                                                                                                                 10070/10070
Anchnet-Base                                                                                                                                                                 10070/10070
Metadata Cache Created

安装 httpd 包测试

代码语言:txt
复制
$ yum install httpd -y
image-20200911143616759
image-20200911143616759

3.2、MySQL

1、创建repository
代码语言:txt
复制
http://repo.mysql.com/yum/mysql-8.0-community/el/

创建完成后,此时 Repository 的状态为: Online - Ready to connect

2、客户端配置 Yum 文件
代码语言:txt
复制
$ vim /etc/yun.repos.d/mysql-8.rpeo
[MySQL8]
name=Mysql for RHEL/CentOS $releasever - $basearch
baseurl=http://mirrors.anchnet.com/repository/MySQL8.0/$releasever/$basearch/
enabled=1
gpgcheck=0
3、安装测试
代码语言:txt
复制
$ yum install -y mysql-community-client-8.0.11 mysql-community-server-8.0.11
image-20200911143838509
image-20200911143838509

3.3、npm

1、创建repository
代码语言:txt
复制
https://registry.npm.taobao.org/

创建完成后,此时 Repository 的状态为: Online - Ready to connect

2、客户端设置 npm 地址
代码语言:txt
复制
$ npm config set registry http://mirrors.anchnet.com/repository/npm/
3、安装测试
代码语言:txt
复制
$ npm i eslint
image-20200911144133462
image-20200911144133462

3.4、pypi

1、创建repository
代码语言:txt
复制
https://mirrors.aliyun.com/pypi

创建完成后,此时 Repository 的状态为: Online - Ready to connect

2、客户端配置 pip.conf 文件
代码语言:txt
复制
$ vim .pip/pip.conf
[global]
trusted-host = mirrors.anchnet.com
index-url = http://mirrors.anchnet.com/repository/pypi/simple/
3、安装测试
代码语言:txt
复制
$ pip install django
[root@k8s-master ~]# pip3 install django
Collecting django
  Downloading http://mirrors.anchnet.com/repository/pypi/packages/django/3.1.1/Django-3.1.1-py3-none-any.whl (7.8MB)
    100% |████████████████████████████████| 7.8MB 1.4MB/s 
Requirement already satisfied: pytz in /usr/local/lib/python3.6/site-packages (from django)
Requirement already satisfied: asgiref~=3.2.10 in /usr/local/lib/python3.6/site-packages (from django)
Requirement already satisfied: sqlparse>=0.2.2 in /usr/local/lib/python3.6/site-packages (from django)
Installing collected packages: django
Successfully installed django-3.1.1

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Nexus介绍
  • 二、Nexus 3.x部署(On Linux)
    • 2.1、下载源码包
      • 2.2、解压
        • 2.3、服务配置
          • 2.4、启动服务
            • 2.5、登录Nexus
            • 三、Nexus配置代理仓库
              • 3.1、yum
                • 1、创建repository
                • 2、客户端配置 Yum 文件
                • 3、安装测试
              • 3.2、MySQL
                • 1、创建repository
                • 2、客户端配置 Yum 文件
                • 3、安装测试
              • 3.3、npm
                • 1、创建repository
                • 2、客户端设置 npm 地址
                • 3、安装测试
              • 3.4、pypi
                • 1、创建repository
                • 2、客户端配置 pip.conf 文件
                • 3、安装测试
            相关产品与服务
            对象存储
            对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档