vs2017 对dockerfile的支持

时间:2022-07-14 00:06:33

项目添加 dockerfile

vs2017 对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的支持的更多相关文章

  1. Docker使用Dockerfile创建支持ssh服务自启动的容器镜像

    原文链接:Docker使用Dockerfile创建支持ssh服务自启动的容器镜像 1. 首先创建一个Dockerfile文件.文件内容例如以下 # 选择一个已有的os镜像作为基础 FROM cento ...

  2. docker~通过vs2017的Dockerfile来生成镜像

    回到目录 Dockerfile这个东西我们之前是介绍过,它方便,快捷,易用,而在vs2017中也对docker进行了支持,而生成docker image的方式就是有用Dockerfile为基础的,在添 ...

  3. 使用Dockerfile创建支持SSH服务的镜像

    1.前面我们学习了使用Dockerfile,那接下来我们就用Dockerfile创建一个支持SSH服务的镜像. 2.首先创建一个目录ssh_centos [root@rocketmq-nameserv ...

  4. vs2017不是完全支持c99

    1.比如c99里面有一个特性, int count[]={0,[5]=7,9,10} 这种在VS2017里面是编译不通过的.; 2.c99有一个变长数组的概念(VLA),但是vs2017不支持.

  5. Docker(2):使用Dockerfile创建支持SSH服务的镜像

    1.创建工作目录 # mkdir sshd_ubuntu # ls 在其中,创建Dockerfile和run.sh文件 # cd sshd_ubuntu/ # touch Dockerfile run ...

  6. 如何让vs2017 EF实体生成支持Mysql 和 Oracle?

    1.Mysql 安装   MySql Connector/Net        https://dev.mysql.com/downloads/connector/net/ 安装    mysql f ...

  7. VS2017 15.6之后支持直接反编译了

    在 15.6 预览版 2 中,增加了导航到反编译源功能. 启用后,在任何引用的类型或成员上调用转到定义或查看定义时,将显示其通过 ILSpy 反编译使用重新构造方法主体的定义. 要打开此功能,请转到“ ...

  8. 官方Tomcat镜像Dockerfile分析及镜像使用

    官方Tomcat镜像 地址:https://hub.docker.com/_/tomcat/ 镜像的Full Description中,我们可以得到许多信息,这里简单介绍下: Supported ta ...

  9. 使用VSCode和VS2017编译调试STM32程序

    近两年,微软越来越拥抱开源支持跨平台,win10搭载Linux子系统,开源VSCode作为跨平台编辑器,VS2017官方支持了Linux和嵌入式开发功能. ST也是,近两年开发的软件工具基本都是跨平台 ...

随机推荐

  1. [转]CentOS开机启动脚本

    转载自http://www.2cto.com/os/201306/220559.html   我的一个Centos开机自启动脚本的制作   一.切换到/etc/init.d/   二.制作sh脚本 v ...

  2. (转)OpenCV 2.4.8 +VS2010的开发环境配置

    转自:  http://blog.csdn.net/poem_qianmo/article/details/19809337 自己可能需要再进行修改 本系列文章由zhmxy555(毛星云)编写,转载请 ...

  3. uiscrollview上的 uipangesturerecognizer冲突

    最近在tableview里的cell imageview加了个 uipangesturerecognizer发现优先滚动imageview,往上拖的时候,tableView不响应滚动了,原来是tabl ...

  4. sublime text There are no packages 解决!

    1.问题如下图 解决如下: 1.取得sublime.wbond.net的IPv4地址.在命令提示符中输入以下命令: ping sublime.wbond.net 获得  pv 4 ip     2.C ...

  5. KoaHub.js可借助 Babel 编译稳定运行在 Node.js 环境上

    koahubjs KoaHub.js -- 基于 Koa.js 平台的 Node.js web 快速开发框架.可以直接在项目里使用 ES6/7(Generator Function, Class, A ...

  6. 一个C#程序员学习微信小程序的笔记

    客户端打开小程序的时候,就将代码包下载到本地进行解析,首先找到了根目录的 app.json ,知道了小程序的所有页面. 在这个Index页面就是我们的首页,客户端在启动的时候,将首页的代码装载进来,通 ...

  7. springmvc的ModelMap,前台取值

    利用 ${user.id}或者‘${user.id}’都是可以直接获取到的,不过前提是在jsp页面的script脚本中,而在引用的js文件中是不可以使用的,因为${}是jsp的el标签. 利用 ${u ...

  8. Jsp俩大内置对象学习

    https://www.cnblogs.com/smyhvae/p/4065790.html post与get的区别 最直观的区别就是GET把参数包含在URL中,POST通过request body传 ...

  9. RocketMQ消息存储

    转载:RocketMQ源码学习--消息存储篇 消息中间件—RocketMQ消息存储(一) RocketMQ高性能之底层存储设计 存储架构 RMQ存储架构 上图即为RocketMQ的消息存储整体架构,R ...

  10. 使用jQuery和CSS3制作数字时钟(jQuery篇) 附源码下载

    HTML 和上一篇文章:使用jQuery和CSS3制作数字时钟(CSS3篇)一样的HTML结构,只是多了个>date用来展示日期和星期的. <div id="clock&quot ...