检测安装版本,如下图表示安装正确

2、创建.NET Core项目
> mkdir data
> cd data
> dotnet new mvc -n mvctest //创建项目名为mvctest的.NET Core MVC项目
> cd mvctest //进入mvctest文件夹
> dotnet run //启动.NET Core MVC项目注:在Program.cs文件中加入代码.UseUrls(“http://*:5000”),在浏览器中访问如下图:

下一步我们就将该目录下的源码项目通过挂载的方式共享到容器中去
3、挂载宿主机项目到容器中
在启动Docker镜像时,Docker允许我们通过使用-v参数挂载宿主机的文件到容器的指定目录下。换句话说,就相当于宿主机共享指定文件供容器去访问
// 命令中的``结合`Enter`键构成换行符,允许我们换行输入一个长命令。
> docker run -it
> -v /data/mvctest/:/app
> microsoft/dotnet:latest
上面的命令就是把/data/mvctest/文件夹下的文件挂载到容器的app目录下

从上面的执行结果来看,容器内部中的app目录下包含了宿主机上的源码项目。
上面说到是以共享的形式,而不是容器拥有一份宿主机目录的拷贝,意味着,在宿主机上对目录的更改,会即时反应到容器中。但反过来,容器中对共享目录的更改,不会反应到宿主机上,不然就打破了容器具有的隔离特性。
通过这样一个简单场景,聪明的你是否会联想到这一场景在我们日常编码的应用之处呢?是的,我们可以用来持续构建(CI)。基本思路是,通过git clone源码到宿主机上,然后将源码目录挂载到容器中去进行构建
4、借助Dockerfile文件
下篇我们升级此操作,不需Dockerfile的依赖,操作一条命令搞定。
Dockerfile用来定义你将要在容器中执行的系列操作。我们来创建第一个Dockerfile
> cd /data/mvctest/ //确保进入我们创建的MVC项目目录中去
> touch Dockerfile //使用touch命令创建Dockerfile
> vi Dockerfile //使用vi命令编辑Dockerfile
进入VI编辑界面后,复制以下代码,使用shift + Ins命令即可粘贴。然后按ESE退出编辑模式,按shift + :,输入wq即可保存并退出编辑界面
FROM microsoft/dotnet:latest
WORKDIR /app
COPY . /app
RUN dotnet restore
EXPOSE 5000
ENV ASPNETCORE_URLS http://*:5000
ENTRYPOINT ["dotnet","run"]上面的命令我依次解释一下:










