linux下 docker + nexus 搭建.net core能使用的nuget服务器
前提条件
操作系统:centos7.6
Docker:19.03.13
拉取镜像
[root@localhost ~]# docker pull sonatype/nexus3
运行容器
方式一:不挂载卷,执行以下命令创建容器。但不建议这么做,因为重启容器数据就会丢失。
[root@localhost ~]# docker run -d -p 8081:8081 --name nexus sonatype/nexus3
方式二:挂载卷:
#创建Nexus数据保存目录
[root@localhost ~]# mkdir -p /data/nexus/nexus-data
#修改文件夹权限;如果不修改,启动后容器内会报权限错误
[root@localhost /]# chmod 777 /data/nexus/nexus-data
#启动容器
[root@localhost ~]# docker run -d -p 8081:8081 --name nexus -v /data/nexus/nexus-data:/nexus-data sonatype/nexus3
访问Nexus
容器启动后,会过一分钟左右才能访问Nexus
浏览器输入地址:http://192.168.3.222:8081/
点击右上角登录,密码我们不知道
#那么我们先找到默认密码,默认密码是放在admin.password文件里面的
[root@localhost nexus-data]# cat /data/nexus/nexus-data/admin.password
账号使用:admin,密码使用:上面命令查看到的一串GUID,即可登录成功。
登录成功后,会要求做两个配置,如下图:
解释下:
一个是让修改密码
另外一个是允许匿名访问,这里选择允许。原因看英文注释。
至此Nexus就安装完了。下面介绍如何使用Nuget,并将数据推送到Nexus。
参考网址:https://www.cnblogs.com/wotoufahaiduo/p/11223834.html
下载nuget.exe
下载地址:https://www.nuget.org/downloads
随便找一个下载下来,放到需要打包的项目下面。我下载的版本是: v5.6.0。
设置打包选项
借助vs的强大功能,在需要打包的项目上右键->属性->打包,配置包的相关属性,并保存。
打包
将待打包的项目设置为Release,然后右键项目,进行打包,如下图:
这时候就会在当前项目的\bin\Release目录下生成一个nupkg包:LS.Permission.HttpApi.Client.0.1.0.nupkg。当然如果你选择的是Debug,那么就会在\bin\Debug目录下生成这个文件。
推送到Nexus
cd定位到nuget.exe所在的目录,然后在该目录上执行以下命令:
nuget.exe push bin/release/LS.Permission.HttpApi.Client.0.1.0.nupkg -Source http://192.168.3.222:8081/repository/nuget-hosted/
或者
nuget.exe push bin/release/LS.Permission.HttpApi.Client.0.1.0.nupkg ben111 -Source http://192.168.3.222:8081/repository/nuget-hosted/
红色”ben111”,表示你的密码,也是APIKey。如果不加ApiKey就会有警告信息。
按照提示输入账号和密码,即可提交到Nexus。
最后,vs上如何使用nuget就不讲了,不在本文范围之内。看下效果图吧:
包括依赖也会在里面。