Docker下部署Nuget Service
准备工作
开始
下载镜像
docker pull idoop/docker-nuget-server
docker镜像地址
环境(文件)准备
-
文件目录
/var/nuget
存放 nuget-server 的文件 包含/db
,/packagefiles
两个文件夹
/usr/nuget
存放 nuget-server 的docker-compose 文件 -
宿主机创建文件夹
/var/nuget/db
/var/nuget/packages
用于映射镜像存储的数据库和包文件
运行镜像
使用docker command
docker run -d -p 5000:80 -e NUGET_API_KEY="Serverr2" -v /var/nuget/db:/var/www/simple-nuget-server/db -v /var/nuget/packagefiles:/var/www/simple-nuget-server/packagefiles --restart always --name nuget-server idoop/docker-nuget-server
由于网络和链接的问题上述命令在服务器可能无法使用可以更改为
1 | docker run -d --name nuget-server -p 1081:80 \ |
命令解释:
将容器的80端口 映射到主机的5000 端口-p 5000:80
设置Nuget_api_key 设置为 xxx-e NUGET_API_KEY=oy2idwuya26l2vqd26taoeskx7p4pevurd3325qjb5gnfe
设置文件映射-v /var/nuget/db:/var/www/db -v /var/nuget/packages:/var/www/packagefiles
设置容器名称--name nuget
来源镜像名称idoop/docker-nuget-server
- 检查防火墙状态
- 开放5000端口
使用 docker compose
用[docker-compose](/notes/docker#Docker Compose),因为敲命令太长了
-
文件目录
/usr/nuget
存放 nuget-server 的docker-compose 文件 -
docker-compose.yml 文件内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43version: '2'
services:
nuget-server:
container_name: nuget-server
image: idoop/docker-nuget-server:latest
network_mode: "host"
restart: always
environment:
NUGET_API_KEY: "nugetkey"
UPLOAD_MAX_FILESIZE: "40M"
## When use host network mode,
## set SERVER_PORT value if you want change server expose port.
SERVER_PORT: "5000"
## Set nuget server domain[:port], also you can use machine(not container) ip[:port].
## eg: "192.168.11.22:8080" or "nuet.eg.com:8080"
## SERVER_NAME: "nuget.example.com"
WORKER_PROCESSES: "2"
volumes:
- nuget-db:/var/www/simple-nuget-server/db
- nuget-packagefiles:/var/www/simple-nuget-server/packagefiles
- nuget-nginx:/etc/nginx
ulimits:
nproc: 8096
nofile:
soft: 65535
hard: 65535
volumes:
nuget-db:
driver: local
driver_opts:
type: 'none'
o: 'bind'
device: '/var/nuget/db'
nuget-packagefiles:
driver: local
driver_opts:
type: 'none'
o: 'bind'
device: '/var/nuget/packagefiles'
nuget-nginx: -
启动容器 进入目录
cd /usr/nuget
docker-compose up -d
测试
访问网址 https://192.168.6.188:5000
出现xml页面表示成功
使用
打包
下载 PackageExplorer 工具
选中需要上传的dll
点击 File - Publish 输入 nuget-server 地址和 app_key 即可
获取包
从搭建好的个人 nuget-server 获取dll包
Vs - 工具 - Nuget -管理Nuget程序包 - 设置 - 添加包源 即可