原文: Docker在Linux上运行NetCore系列(三)在Linux上使用Docker运行Asp.NetCore
转发请注明此文章作者与路径,请尊重原著,违者必究。
系列文章:https://www.cnblogs.com/alunchen/p/10121379.html
开始说明
上几篇文章都是通过Linux运行控制台程序,现在我们运行一个NetCore Web程序,并且使用我们一般的项目流程来做。从git下载代码到linux编译运行。
流程:新建项目->创建Dockerfile->Git clone代码->docker编译代码,成为镜像->运行程序->内网访问网站。
新建项目并开始构建镜像
新建项目步骤略过,这里使用的是VS2017版本,选择Docker时,注意使用Linux环境。并且要修改Dockfile文件里面的路径,否则运行时会报错。新建项目可查看系列(一)的文章。
修改路径如下:
上传代码到Git也略过......
现在开始登录linux,并且使用git clone把代码克隆下来。
使用命令【git clone http://git用户名:git密码@IP地址:端口号/xxx/TestDockerLinuxWebApplication1.git】
进入到Dockerfile的目录,使用命令【ls】看到应用程序的代码:
使用命令编译程序并创建镜像【sudo docker build -t testdockerlinuxwebapplication1:1.0.0 .】
会出现一大堆运行步骤命令,最终运行成功。
使用【sudo docker images】命令查看,以及
创建容器并运行
在运行应用程序【sudo docker run --name testdockerlinuxwebapplication1 -p 8081:80 testdockerlinuxwebapplication1:1.0.0】
-p是8081是容器对外端口,80是容器内机器端口。意思是映射外网8081端口到本地容器80端口。
运行成功:
在上面,我们看到命令停止在那里了,不是后台在运行。这里我们使用【Control+C】来停止容器。
停止之后网站就不能访问了,我们可以查看所有状态的容器:【sudo docker ps -a】
发现容器已经是停止状态,我们再运行容器。【sudo docker start testdockerlinuxwebapplication1】
在访问网站,能访问了。
系列文章
Docker在Linux/Windows上运行NetCore文章系列
可以关注本人的公众号,多年经验的原创文章共享给大家。