上一篇博客写的 netcoer上传到docker ,编译 并发布,传送门:fineuicore基础版部署到docker实战

这是一种笨方法,理想的方法是,在本地编译成镜像,然后推送到镜像仓库,服务器的docker pull  这个镜像就可以了。

镜像仓库有docker hub,官网:,网上很多实例

我今天要用腾讯云的镜像仓库,进入腾讯云容器服务,下的镜像仓库,二话不说先建一个镜像:

 

 

 

 

 

 

看这个指引,我们需要下载      docker desktop for windows    https://hub.docker.com/?overlay=onboarding ,并安装,具体  docker desktop for windows 的安装教程请百度,很简单。

验证一下本机的docker是什么版本:docker -v ,结果是:docker version 19.03.5, build 633a0ea

 

 

 

注意上图这个地方,不要选择错了,要选择linux 的,否则生成的镜像,linux的docker不能用

我的netcore项目,dockerfile文件:

from microsoft/dotnet:2.2-aspnetcore-runtime as base
arg source
workdir /publish
expose 8080
copy /. /publish
entrypoint [“dotnet”, “pyoa.dll”]

发布成文件,发布之前设置一下:我选择的独立,core2.2

 

 

 

cmd , 进入bin\release\netcoreapp2.2 下,敲命令,编译生成镜像:

docker build -t pyoa  .   

 

 注意最后有一个逗点。

生成镜像时间有点长,成功之后,看一下本机是不是有了这个镜像: docker images 

 

 

登陆腾讯云的镜像仓库:

docker login --username=登录名 ccr.ccs.tencentyun.com

会让你输入密码

登陆成功后,docker tag : 标记本地镜像,将其归入某一仓库。

docker tag pyoa ccr.ccs.tencentyun.com/pyoa/pyoa01

开始上传:

docker push ccr.ccs.tencentyun.com/pyoa/pyoa01

成功后,打开腾讯云镜像仓库,会发现有了一个镜像

 

 

好了,进入腾讯云命令行,从腾讯云镜像仓库中获取 这个镜像:

一样的,先要登陆

docker login --username=登陆 ccr.ccs.tencentyun.com

pull 镜像:

 docker pull ccr.ccs.tencentyun.com/pyoa/pyoa01

成功后查看,docker images:

 

 拉取成功了,最后,生成 一个这个镜像的容器:

docker run --name=pyoa01 -p 8080:80 -d  ccr.ccs.tencentyun.com/pyoa/pyoa01

容器的端口是80,映射到服务器的端口8080.然后 ip+8080.就可以访问了