使用Nexus搭建nuget包服务器

最近流水线发布总是遇到nuget官方源或azure镜像源无法使用的情况,特别是下午或晚上的时间点;思来想去还是自行搭建一个nuget服务,因此本文记录了相关要点,希望能给大家多一个选择。

一、获取 Nexus 镜像

docker pull sonatype/nexus3

无法拉取镜像文件的,可以修改docker源

sudo tee /etc/docker/daemon.json <<EOF
{
    "registry-mirrors": [
        "https://docker.1ms.run",
        "https://docker.xuanyuan.me",
    ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

二、创建Docker卷

首先,创建两个Docker卷,一个用于Nexus的数据,另一个用于Nexus的配置文件。

docker volume create --name=nexus-data
docker volume create --name=nexus-logs

三、创建并启动Nexus容器

docker run -d --name nexus3 \
-p 12025:8081 \
--restart always \
-v nexus-data:/nexus-data \
-v nexus-logs:/nexus-logs \
-e TZ=Asia/Shanghai \
sonatype/nexus3

四、进入容器获取密码

进入容器

docker exec -it nexus3 /bin/bash 

进入nexus-data目录

cd /nexus-data

查看密码

cat admin.password 

如上图所示,其实Nexus默认已经创建好了Nuget的仓库,并且是创建了3个不同类型的仓库:nuget-group,nuget-hosted,nuget.org-proxy

nuget.org-proxy

类型是proxy,表示代理仓库。我们向它请求包(package)的时候,如果本地有,它就从本地提供,如果本地没有,它会从nuget.org下载到本地,然后给我提供这个包。

nuget-hosted

类型是hosted,表示托管仓库。我们一般把自己开发的包上传到该仓库中。

nuget-group

类型是group,表示仓库组,它结合了nuget.org-proxy和nuget-hosted,能对外提供上述两者中的包。

在nuget-hosted中上传nuget包,如下:

五、在VS中使用Nuget包

1、 打开Visual Studio的Nuget管理器,进行设置

2、添加私有Nuget仓库地址

 3、引用nuget包

 

来源链接:https://www.cnblogs.com/yswenli/p/18668372

© 版权声明
THE END
支持一下吧
点赞6 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容