linux安装的坑
上传包之后,需要修改的内容:
在
~/bin/nexus
设置java路径
INSTALL4J_JAVA_HOME_OVERRIDE="/root/mynexus/nexus-3.19.1-01/bin/jdk1.8.0_141"
INSTALL4J_JAVA_PREFIX="$JAVA_HOME"
设置允许root
run_as_root=false
修改
~/nexus.vmoptions
-Xms512m
-Xmx666m
-XX:MaxDirectMemorySize=667m
默认的内存(2703m)太大了,在阿里云最低配置里无法启动,而且看不到报错信息.
mac安装
- 解压文件后,进入
/Users/apple/nexus-3.17.0-01-mac/nexus-3.17.0-01/bin
,运行服务:./nexus start
- 访问
http://127.0.0.1:8081/#browse/search/pypi
,默认账户:admin/admin123
查看本机java路径:
which java
然后修改./nexus文件,加入java路径INSTALL4J_JAVA_PREFIX="/usr/bin/java"
开始
-
创建仓库界面:
- 创建代理库proxy
- 创建host库
- 创建group库,把上面创建的proxy和host包含进来
- group库名字,即是将来要使用的.
- (最好是开个venv虚拟环境)开始通过nexus下载第三方库,命令:
pip3 install -i http://localhost:8081/repository/my_group/simple flask
拷贝库去内网
-
外网笔记本建立定时task任务,执行,生成备份:
[图片上传中...(image.png-c032a7-1584407214706-0)]
第一次需要建立Tasks,以后备份时只需要
Run
这个任务就行了.
执行完成,会生成文件夹:
* 把/Users/apple/Downloads/nexus-3.17.0-01-mac/sonatype-work/nexus3
路径下的0205
(阿里云上对应文件夹是export_pypi
)和blobs
文件夹压缩,传到内网.(其中0205文件夹里只需要传最新的一份备份)
2020.12更新 本地mac 转 内网linux
- 在本地mac手动执行task备份
- 把
/Users/xxx/nexus-3.17.0-01-mac/sonatype-work/nexus3
目录下的blobs
和export-mac-python
文件夹拷贝进入内网.
数据库还原
- 停止nexus:
/home/nexus/nexus-3.19.1-01/nexus-3.19.1-01/bin
, 执行./nexus stop
- 删除如下数据库目录,位置:
/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
的内容 - 复制数据库备份文件(也就是上面0205文件夹里的内容)到
/home/nexus/nexus-3.19.1-01/sonatype-work/nexus3/restore-from-backup
目录.
blobs还原
- 进入
/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
, 执行./nexus start
本机已有一些库怎么办?
- 清除本地第三方库:
pip freeze > packages.txt
pip uninstall -r packages.txt
- 打开虚拟环境,重新通过本地nexus安装第三方库
使用过程中要注意,如果你的内网windows电脑是python3.8版本,那么外网用的windows也一定要是python3.8版本, 否则某些库可能无法安装.
通过云主机,下载mac,windows,linux三个平台的库
有些第三方库,区分了不同操作系统, 所以有时候在mac主机上通过nexus下载的库, 拷贝到内网windows或linux机器上无法使用.
操作步骤:
- 在云主机搭建nexus
- 在mac , linux, windows笔记本上,分别通过云主机下载所需的第三方库
- 导出云主机的nexus库,拷贝到内网nexus服务器上即可