使用nexus搭建內(nèi)網(wǎng)pypi服務(wù)器

linux安裝的坑

上傳包之后,需要修改的內(nèi)容:

  1. ~/bin/nexus設(shè)置java路徑
    INSTALL4J_JAVA_HOME_OVERRIDE="/root/mynexus/nexus-3.19.1-01/bin/jdk1.8.0_141"
    INSTALL4J_JAVA_PREFIX="$JAVA_HOME"

  2. 設(shè)置允許root
    run_as_root=false

  3. 修改~/nexus.vmoptions

-Xms512m
-Xmx666m
-XX:MaxDirectMemorySize=667m

默認(rèn)的內(nèi)存(2703m)太大了,在阿里云最低配置里無法啟動,而且看不到報錯信息.

mac安裝

  1. 解壓文件后,進(jìn)入/Users/apple/nexus-3.17.0-01-mac/nexus-3.17.0-01/bin,運行服務(wù): ./nexus start
  2. 訪問http://127.0.0.1:8081/#browse/search/pypi,默認(rèn)賬戶:admin/admin123

查看本機java路徑: which java
然后修改./nexus文件,加入java路徑INSTALL4J_JAVA_PREFIX="/usr/bin/java"

開始

  1. 創(chuàng)建倉庫界面:
    image.png
  2. 創(chuàng)建代理庫proxy
  3. 創(chuàng)建host庫
  4. 創(chuàng)建group庫,把上面創(chuàng)建的proxy和host包含進(jìn)來
  5. group庫名字,即是將來要使用的.
  6. (最好是開個venv虛擬環(huán)境)開始通過nexus下載第三方庫,命令:pip3 install -i http://localhost:8081/repository/my_group/simple flask
    image.png

拷貝庫去內(nèi)網(wǎng)

  • 外網(wǎng)筆記本建立定時task任務(wù),執(zhí)行,生成備份:
    image.png

    image.png
image.png

[圖片上傳中...(image.png-c032a7-1584407214706-0)]

image.png

第一次需要建立Tasks,以后備份時只需要Run這個任務(wù)就行了.

執(zhí)行完成,會生成文件夾:

image.png

* 把/Users/apple/Downloads/nexus-3.17.0-01-mac/sonatype-work/nexus3路徑下的0205(阿里云上對應(yīng)文件夾是export_pypi)和blobs文件夾壓縮,傳到內(nèi)網(wǎng).(其中0205文件夾里只需要傳最新的一份備份)


2020.12更新 本地mac 轉(zhuǎn) 內(nèi)網(wǎng)linux

  1. 在本地mac手動執(zhí)行task備份
  2. /Users/xxx/nexus-3.17.0-01-mac/sonatype-work/nexus3目錄下的blobsexport-mac-python文件夾拷貝進(jìn)入內(nèi)網(wǎng).

數(shù)據(jù)庫還原

  • 停止nexus: /home/nexus/nexus-3.19.1-01/nexus-3.19.1-01/bin,?執(zhí)行./nexus stop
  • 刪除如下數(shù)據(jù)庫目錄,位置:/home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/db/ 里的component,config , security 文件夾.
  • 刪除/home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/restore-from-backup的內(nèi)容
  • 復(fù)制數(shù)據(jù)庫備份文件(也就是上面0205文件夾里的內(nèi)容)到 /home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/restore-from-backup目錄.

blobs還原

  • 進(jìn)入/home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/目錄, 刪除或者重命名原blobs文件夾.
  • 將備份的blobs壓縮文件解壓到/home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/目錄,解壓unzip blobs.zip
  • 重新啟動nexus: /home/nexus/nexus-3.19.1-01/nexus-3.19.1-01/bin,?執(zhí)行./nexus start

本機已有一些庫怎么辦?

  1. 清除本地第三方庫:
    pip freeze > packages.txt
    pip uninstall -r packages.txt
  2. 打開虛擬環(huán)境,重新通過本地nexus安裝第三方庫

使用過程中要注意,如果你的內(nèi)網(wǎng)windows電腦是python3.8版本,那么外網(wǎng)用的windows也一定要是python3.8版本, 否則某些庫可能無法安裝.


通過云主機,下載mac,windows,linux三個平臺的庫

有些第三方庫,區(qū)分了不同操作系統(tǒng), 所以有時候在mac主機上通過nexus下載的庫, 拷貝到內(nèi)網(wǎng)windows或linux機器上無法使用.
操作步驟:

  1. 在云主機搭建nexus
  2. 在mac , linux, windows筆記本上,分別通過云主機下載所需的第三方庫
  3. 導(dǎo)出云主機的nexus庫,拷貝到內(nèi)網(wǎng)nexus服務(wù)器上即可
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容