日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于Bandersnatch搭建本地pypi源

發布時間:2023/12/29 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于Bandersnatch搭建本地pypi源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、安裝python3

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel yum install libffi-devel -y wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz tar -xvJf Python-3.7.3.tar.xz cd Python-3.7.3 ./configure prefix=/usr/local/python3 make && make install ln -s /usr/local/python3/bin/python3 /usr/bin/python3

# 將/usr/local/python3/bin加入PATH

# vim ~/.bash_profile # .bash_profile # Get the aliases and functions if[ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin:/usr/local/python3/bin export PATH

按ESC,輸入:wq回車退出。

修改完記得執行行下面的命令,讓上一步的修改生效:

# source ~/.bash_profile

檢查Python3及pip3是否正常可用:

# python3 -V Python 3.7.3 # pip3 -V pip 19.0.3 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)

2、安裝Bandersnatch

Bandersnatch 是一個用于同步 pypi 源的工具,采用它下載和同步官網所有 package 到本地,最后由 nginx 發布

# pip3 install bandersnatch # find / -name master.py /usr/local/python3/lib/python3.7/site-packages/bandersnatch/master.py # cp /usr/local/python3/lib/python3.7/site-packages/bandersnatch/master.py{,.bak} # vim /usr/local/python3/lib/python3.7/site-packages/bandersnatch/master.py

生成配置文件:

# bandersnatch mirror 2019-05-06 10:30:17,555 WARNING: Config file '/etc/bandersnatch.conf' missing, creating default config. 2019-05-06 10:30:17,555 WARNING: Please review the config file, then run 'bandersnatch' again.

修改配置文件/etc/bandersnatch.conf
根據實際情況,重點修改以下兩個配置,directory 指 package 在本地存放的位置(要保證該目錄空間足夠,預留300G以上),master 指被同步的源。

# vim /etc/bandersnatch.conf [mirror] ; The directory where the mirror data will be stored. directory = /srv/pypi ; Save JSON metadata into the web tree: ; URL/pypi/PKG_NAME/json (Symlink) -> URL/json/PKG_NAME json = false; The PyPI server which will be mirrored. ; master = https://pypi.python.org ; scheme for PyPI server MUST be https master = https://pypi.python.org timeout = 30

下載所有 package 至本地(更新本地的 pacakge也用這個命令)

bandersnatch -c /etc/bandersnatch.conf mirror

3、安裝 nginx

yum install nginx -y

更改nginx.conf的配置文件

server {listen *:80;server_name locahost;root /srv/pypi/web;autoindex on;charset utf-8; }

打開網頁查看是否正常:

http://172.28.88.102/simple/

4、測試客戶端

在另一臺服務器配置pip的地址

# cat ~/.pip/pip.conf [global] trusted-host=172.28.88.102 index-url=http://172.28.88.102/simple# pip install baker # pip list | grep Baker Baker (1.3)

總結

以上是生活随笔為你收集整理的基于Bandersnatch搭建本地pypi源的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。