Docker学习 - Sonatype Nexus(老版)镜像启动部署、脚本批量上传Jar包仓库

Sonatype Nexus

使用

镜像地址: https://hub.docker.com/r/sonatype/nexus

注意: -v映射的容器目录nexus2跟nexus3是有区别,且访问地址也是有少许变化

#镜像下载
docker pull sonatype/nexus


# 切记这部必须执行,否则下面run的话会启动不起来 == 当然你信邪的话可以直接启下面run看看能不能启来,不能的话在设置这一步骤
mkdir -p /www/server/docker_sonatype_nexus/data && chown -R 200 /www/server/docker_sonatype_nexus/data

# 启动容器
# 仓库的路径:/sonatype-work/storage/仓库名
docker run -d -p 8081:8081 --name nexus -v /www/server/docker_sonatype_nexus/data:/sonatype-work sonatype/nexus

# 访问 - http://192.168.80.128:8081/nexus
# 账号:admin
# 密码:admin123
http://IP地址:8081/nexus
脚本
批量上传本地库到私库

文章参考: https://blog.csdn.net/qq_35237533/article/details/125159799

本人有对此脚本有做进一步增强,推荐使用我新写的增强脚本,如使用请到这个链接进行查看【20220727】 https://blog.csdn.net/weixin_39651356/article/details/126007459


mavenimport.sh == 将此脚本放在待上传的本地仓库里面

#!/bin/bash
# copy and run this script to the root of the repository directory containing files
# this script attempts to exclude uploading itself explicitly so the script name is important
# Get command line params
while getopts ":r:u:p:" opt; do
        case $opt in
                r) REPO_URL="$OPTARG"
                ;;
                u) USERNAME="$OPTARG"
                ;;
                p) PASSWORD="$OPTARG"
                ;;
        esac
done


# 步骤1:优化原作者有些无啥必要的筛选,因为写的必不起作用,特别注意 -path并不是正则,很像mysql的like模糊查询,大量使用到的转义字符压根没啥软用,而且正则还是错的
#find . -type f -not -path './mavenimport\.sh*' -not -path '*/\.*' -not -path '*/\^archetype\-catalog\.xml*' -not -path '*/\^maven\-metadata\-local*\.xml' -not -path '*/\^maven\-metadata\-deployment*\.xml' | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;

# 下行命令讲解
# 步骤1:当前目录下找出所有是文件非目录类型的文件 - 且排除掉mavenimport.sh文件
# 步骤2:将当前筛选出的文件绝对路径== 前面的  ./ 字符替换成空字符
#     如   ./cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.jar  ==>  cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.jar
#    如   ./cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.pom  ==>  cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.pom
# 步骤3:开始一个一个的上传文件(筛选出有多少行文件绝对路径,则curl则执行多少遍)
#    curl -u "$USERNAME:$PASSWORD" -X PUT -v -T cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.jar ${REPO_URL}/cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.jar
#    curl -u "$USERNAME:$PASSWORD" -X PUT -v -T cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.pom ${REPO_URL}/cn/hutool/hutool-all/5.8.4/hutool-all-5.8.4.pom
find . -type f -not -path '*mavenimport.sh*'  | sed "s|^\./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;



开始上传
在这里插入图片描述

在这里插入图片描述


sh mavenimport.sh -u admin -p admin123 -r http://192.168.19.107:8081/nexus/content/repositories/lrc/

在这里插入图片描述


配合IDEA、Maven使用
在这里插入图片描述

在这里插入图片描述

刷新Maven、去本地库查看依赖是否从私库下载成功

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值