ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

docker 部署私人 nuget 服务

2022-08-10 23:00:34  阅读:160  来源: 互联网

标签:Nuget 推送 nupkg nuget 111.111 home docker 私人


使用docker搭建私有Nuget服务

首先在linux服务器上创建两个容器挂着目录

mkdir /home/nuget/db
mkdir /home/nuget/packages
并且对该目录指定写入权限
chmod 666 /home/nuget

使用如下创建容器命令运行Nuget服务
docker run -d -p 8085:80 -v /home/nuget/db:/var/www/db -v /home/nuget/packages:/var/www/packagefiles -e NUGET_API_KEY=f4b59444-6b98-4e3f-b1de-77e84f22a807 sunside/simple-nuget-server

image

docker ps -a 查看运行的所有容器
image

此时 浏览器中直接使用 IP+端口访问,如下图则说明部署成功
image

测试使用刚搭建的 Nuget 服务

1:新建项目

image

2:右键属性,选择包->常规,勾选在生成操作期间创建包文件

根据自己的需求修改包ID、标题、包版本(注意每次推送时候增加版本号)

image

3:找到生成->输出,右边的预生成事件框中输入

del $(ProjectDir)$(OutDir)..\*.nupkg /s/q
exit 0

该命令的意思是 删除 当前项目路径下/当前输出路径下的 以.nupkg 结尾的所有文件

image

4:右键-> 重新生成

5:打开项目所在文件夹 进入 bin>Debug 目录

nuget 包已经打包好了这时候我们需要推送到 nuget server 服务器

image

6:再此目录路径上输入 cmd,在cmd中定位到当前文件夹

image

7:输入命令,此处IP换成自己服务器IP

dotnet nuget push *.nupkg -k f4b59444-6b98-4e3f-b1de-77e84f22a807 -s http://111.111.111.111:8085

image

自此自己的项目已经推送到 Nuget 服务器上了 可以在挂着目录中看到自己推送的项目,也可以在Nuget地址源添加自己的源地址 http://111.111.111.111:8085 后再服务器上查看到

image
image

每次推送都要写这句命令,麻烦 所以我们自定义一个 vs 菜单来推送

image

image
标题 nuget debug push
命令 $(SolutionDir)\push.cmd
参数 $(ProjectDir)bin\Debug\*.nupkg
初始目录 $(ProjectDir)bin\Debug

应用并保存 然后选择工具->自定义

image

命令 -> 选择上下文菜单 -> 选择项目和解决方案上下文菜单|项目,然后点击添加命令

image

选择 工具-> 外部命令2

image

为啥选择的是 外部命令2(外部命令2 后面的数字是表示自定义外部命令的索引)
image

项目的解决方案下面新建 push.cmd 文件
文件内容: dotnet nuget push *.nupkg -k ee28314c-f7fe-2550-bd77-e09eda3d0119 -s http://111.111.111.111:8085
image

最后我们改个版本号 再项目上右键,就能看到 我们自定义的菜单,点击就可义推送到 nuget 服务器上了

image
image

此处我们也能看到每次改版本后推送的各个版本
image

标签:Nuget,推送,nupkg,nuget,111.111,home,docker,私人
来源: https://www.cnblogs.com/rtwo/p/16574233.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有