一、Nexus錯誤500原因分析
昨天單位的Nexus私有倉庫無法deploy,提示錯誤500:
查了下Nexus的Log,原因是Nexus所在的磁盤可用容量小於4GB了
Nexus默認配置要求磁盤不得小於4G,否則只能下載不能上傳
二、解決方案分析
網上的解決方案主要有三個:1、刪掉一些不需要的文件 2、擴容磁盤容量 2、修改Nexus默認的最小容量配置。畢竟是單位的開發機器,上面都是別人的文件,不好隨意刪,同時擴容磁盤也需要讓運支同事來操作,短期內搞不定,所以1和2直接pass,考慮方案3。
三、解決過程
Nexus容量配置文件是安裝目錄下的bin/nexus.vmoptions文件中,單位的Nexus是用docker部署的,container中的這個文件是隻讀的,無法在container的命令行中修改。解決方案是把container配置文件拷出來,在本地改完了再拷回去:
docker cp nexuscontainerid:/opt/sonatype/nexus/bin/nexus.vmoptions /tmp
# 如果要改成2048M,就在最後添加一句-Dstorage.diskCache.diskFreeSpaceLimit=2048
vi /tmp/nexus.vmoptions
docker cp /tmp/nexus.vmoptions nexuscontainerid:/opt/sonatype/nexus/bin/nexus.vmoptions
docker container restart nexuscontainerid