Docker入门(运行.net core asp项目)

1.安装docker

官网下载docker for windows,点击下一步
docker安装:https://blog.csdn.net/go_d_og/article/details/75675159
开启电脑虚拟化:https://zhidao.baidu.com/question/1894752363981711700.html
:必须开启电脑虚拟化功能

2.创建.Net Core asp项目并使用docker运行

项目创建没什么好说的,打开vs看着操作就行
在项目根目录创建名为 Dockerfile 的文件
两种方式:

1.

 

 2.

Dockerfile的内容为:
FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
WORKDIR /app
COPY . .
EXPOSE 80
ENTRYPOINT ["dotnet", "NetCoreAsp.dll"]

 

dockerfile文件内容描述:http://www.javashuo.com/article/p-hkqaozhz-ht.html

 

1.以管理员权限启动docker
2.在项目文件Dockerfile所在目录打开命令行窗口(shift+鼠标右键)

 

输入命令: dotnet publish -o ../publish 
上面是编译并发布项目到父级目录publish的命令
3.创建镜像 在上面项目发布目录publish中执行: docker build -t netcore .  注:后面有个点
然后就开始下载创建镜像
4.运行图像
 docker run -it --rm -p 8080:80 netcore  //-it --rm运行一个镜像当退出时自动删除运行时创建的容器
 docker run -i -p 8080:80 netcore  //-i 运行一个镜像退出时创建的容器还在运行 使用:docker stop 容器ID 停止容器 docker rm 容器ID 删除容器
 docker run -t --rm -p 8080:80 netcore  //退出时不删除容器,但使用:docker stop 容器ID 停止容器后,容器自动删除