vs2017 对dockerfile的支持
项目添加 dockerfile

Docker file 内容
FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80
FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY ["WebAPIForDocker/WebAPIForDocker.csproj", "WebAPIForDocker/"]
RUN dotnet restore "WebAPIForDocker/WebAPIForDocker.csproj"
COPY . .
WORKDIR "/src/WebAPIForDocker"
RUN dotnet build "WebAPIForDocker.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "WebAPIForDocker.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "WebAPIForDocker.dll"]
Visual stdio 执行 dockerfile
直接运行 docker build 报错
D:\Work\My\opensource\Dotnet2\DockerExample\WebAPIForDocker>docker build -t dotnet:WebAPIForDocker .
Sending build context to Docker daemon 303.9MB
Step 1/16 : FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
---> e56d8091e0bf
Step 2/16 : WORKDIR /app
---> Using cache
---> 1b458c38a238
Step 3/16 : EXPOSE 80
---> Using cache
---> 9b2ec0ced4cd
Step 4/16 : FROM microsoft/dotnet:2.1-sdk AS build
---> e87e5f0285fc
Step 5/16 : WORKDIR /src
---> Using cache
---> b4d77609de72
Step 6/16 : COPY ["WebAPIForDocker/WebAPIForDocker.csproj", "WebAPIForDocker/"]
COPY failed: stat /var/lib/docker/tmp/docker-builder044742703/WebAPIForDocker/WebAPIForDocker.csproj: no such file or directory
选中dockerfile,右键执行生成docker 镜像
查看生成的docker 镜像
D:\Work\My\opensource\Dotnet2\DockerExample>docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
webapifordocker latest f97cbfd07c4a 2 minutes ago 253MB
运行 docker 镜像
D:\Work\My\opensource\Dotnet2\DockerExample>docker run -it -p 5000:5000 webapifordocker
info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[0]
User profile is available. Using '/root/.aspnet/DataProtection-Keys' as key repository; keys will not be encrypted at rest.
info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[58]
Creating key {cbb57e3c-2b4d-4e00-b9cc-bbb7c3e4977a} with creation date 2018-12-26 09:28:53Z, activation date 2018-12-26 09:28:53Z, and expiration date 2019-03-26 09:28:53Z.
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35]
No XML encryptor configured. Key {cbb57e3c-2b4d-4e00-b9cc-bbb7c3e4977a} may be persisted to storage in unencrypted form.
info: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[39]
Writing data to file '/root/.aspnet/DataProtection-Keys/key-cbb57e3c-2b4d-4e00-b9cc-bbb7c3e4977a.xml'.
Hosting environment: Production
Content root path: /app
Now listening on: http://[::]:5000
Application started. Press Ctrl+C to shut down.
终端中测试
返回数据一切正常
root@084a60515e21:/app# curl http://localhost:5000/api/orders/getorderList
[{"item1":"ja201808204778560863744992601","item2":"08/20/2018 18:29:16"},{"item1":"201808205628636382300589946","item2":"08/20/2018 18:29:18"},{"item1":"201808205753427170575780018","item2":"08/20/2018 18:29:19"},{"item1":"201808204749312987745111125","item2":"08/20/2018 18:29:21"},{"item1":"201808204725778270582113008","item2":"08/20/2018 18:29:22"},{"item1":"201808204776350327734840932","item2":"08/20/2018 18:29:27"},{"item1":"201808205627318305959441050","item2":"08/20/2018 18:29:30"},{"item1":"201808205593544898683339668","item2":"08/20/2018 18:29:34"},{"item1":"201808205707984438836626731","item2":"08/20/2018 18:29:35"},{"item1":"201808205573431454844603206","item2":"08/20/2018 18:29:39"}]root@084a60515e21:/app#
vs2017 对dockerfile的支持的更多相关文章
- Docker使用Dockerfile创建支持ssh服务自启动的容器镜像
		原文链接:Docker使用Dockerfile创建支持ssh服务自启动的容器镜像 1. 首先创建一个Dockerfile文件.文件内容例如以下 # 选择一个已有的os镜像作为基础 FROM cento ... 
- docker~通过vs2017的Dockerfile来生成镜像
		回到目录 Dockerfile这个东西我们之前是介绍过,它方便,快捷,易用,而在vs2017中也对docker进行了支持,而生成docker image的方式就是有用Dockerfile为基础的,在添 ... 
- 使用Dockerfile创建支持SSH服务的镜像
		1.前面我们学习了使用Dockerfile,那接下来我们就用Dockerfile创建一个支持SSH服务的镜像. 2.首先创建一个目录ssh_centos [root@rocketmq-nameserv ... 
- vs2017不是完全支持c99
		1.比如c99里面有一个特性, int count[]={0,[5]=7,9,10} 这种在VS2017里面是编译不通过的.; 2.c99有一个变长数组的概念(VLA),但是vs2017不支持. 
- Docker(2):使用Dockerfile创建支持SSH服务的镜像
		1.创建工作目录 # mkdir sshd_ubuntu # ls 在其中,创建Dockerfile和run.sh文件 # cd sshd_ubuntu/ # touch Dockerfile run ... 
- 如何让vs2017 EF实体生成支持Mysql 和 Oracle?
		1.Mysql 安装 MySql Connector/Net https://dev.mysql.com/downloads/connector/net/ 安装 mysql f ... 
- VS2017 15.6之后支持直接反编译了
		在 15.6 预览版 2 中,增加了导航到反编译源功能. 启用后,在任何引用的类型或成员上调用转到定义或查看定义时,将显示其通过 ILSpy 反编译使用重新构造方法主体的定义. 要打开此功能,请转到“ ... 
- 官方Tomcat镜像Dockerfile分析及镜像使用
		官方Tomcat镜像 地址:https://hub.docker.com/_/tomcat/ 镜像的Full Description中,我们可以得到许多信息,这里简单介绍下: Supported ta ... 
- 使用VSCode和VS2017编译调试STM32程序
		近两年,微软越来越拥抱开源支持跨平台,win10搭载Linux子系统,开源VSCode作为跨平台编辑器,VS2017官方支持了Linux和嵌入式开发功能. ST也是,近两年开发的软件工具基本都是跨平台 ... 
随机推荐
- bootstrap 后台模板
			http://wangye0119-html1.demo.smallseashell.com/index.html 
- linux利用命令将一个盘上的所有复制到另一个盘上
			1.fdisk -l 查看硬盘状况 2.将目标盘利用mount挂载 3.查看硬盘使用状况,看目标盘是否有足够的空间:df -h 4.如果足够,利用dd命令将源盘数据拷贝到目标盘:dd if=/dev/ ... 
- 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe
			趟过了之前的坑后,再来安装YouCompleteMe 一.安装依赖包 yum install libXt-devel gtk2-devel yum -y install python-devel ru ... 
- day2(基础数据类型)
			一.基础数据类型操作 1.数字 int 数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以: int.bit_length() -> int Number of bits necess ... 
- C#系列之{流和序列化}
			不论何种类型的文件都可以表示为一个字节数组.(Byte[]) 一.文件复制 (示例) 首先建立一个类似管道的东西将文件和内存中的程序连接,并将文件按字节发送.为了保存接收到的文件字节,需要创建一个字节 ... 
- share pool 管理机制
			Library cache是Shared pool的一部分,它几乎是Oracle内存结构中最复杂的一部分,主要存放shared curosr(SQL)和PLSQL对象(function,procedu ... 
- concurrent.future
			concurrent.future module provides a high-level interface for asynchronously executing callables. Bas ... 
- Rescue HDU1242 (BFS+优先队列)                                                                                                         标签:               搜索                                            2016-05-04 22:21             69人阅读              评论(0)
			Description Angel was caught by the MOLIGPY! He was put in prison by Moligpy. The prison is describe ... 
- 《mysql必知必会》学习_第七章_20180730_欢
			第七章:数据过滤 P43 select prod_id,prod_price,prod_name from products where vend_id =1003 and prod_price &l ... 
- java基础知识-新手上路注意事项一
			1.文件名,类名,字节码文件名三者的关系 源文件名:Demo.java 类名:Demo 字节码文件名:Demo.class 2.如果class定义前,加上public修饰,说明这是一个公共类,此时类名 ... 
