• ASP.Net Core 发布到 Windows Docker


    新版Docker for windows 使用WIN10新的WSL2 进行docker操作比之前的版本更加成熟简单,甚至可以和VS进行联调测试了 很方便

    1.安装新版docker desktop20

    2.和发布到centos 一样 我们先把项目文件编译并发布到本地目录,由于是在windows当前主机上的docker发布 所以无需再上传

    由于生成的默认dockerfile 包含了编译代码部分需要和centos一样处理下 注意这次我们版本使用的net5.0 所以镜像路径有所变化

    FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
    FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
    WORKDIR /app  
    COPY . .
    EXPOSE 7012
    ENTRYPOINT ["dotnet", "ShopX.Supplier.Api.dll"]

    翻译过来就是直接把文件拷贝到 docker  运行目录为 /app   端口为7012  启动程序为

    ShopX.Supplier.Api.dll

    注意这个端口要和程序的运行端口保持一致

    3.在发布后的目录下运行cmd 启动命令行模式

    按顺序执行下面的2个指令,生成镜像并启动容器 这两部和centos操作是一样的

    #根据当前目录文件生成 docker image 名字为 shopx-supplierapi
    docker build -t  shopx-supplierapi .
    
    
    #根据image启动一个容器 并映射端口为7012
    docker run --name=supplierapi -p 7012:7012  -d shopx-supplierapi

    效果如下

    通过docker images 和docker ps 指令可以看到镜像和容器对象 说明二者已经启动并运行

     

     其实在docker destop中也能看到这些镜像和容器

    新版docker desktop 容器和镜像以及运行状态都可以显示在桌面上操作无需再使用指令,Desktop 操作界面:

    1.镜像列表:如图右侧给出了列表可操作项可删除或者运行

     2.容器列表:如下图所示可以对容器进行启动停止删除等操作 web程序也可以自动打开浏览器访问 非常方便

    而且CLI指令也能自动执行:如下所示可以直接进入容器目录非常方便

    现在我们直接在主机上访问7012接口测试下:ok 可以正常访问了

    接口数据也是正常的.数据库连接的是局域网中的另一台说明windows docker 容器可以 直接和宿主机一样访问同局域网内的机器, IP一致,无需另外设置,猜测网络连接模式是host模式 和主机共用IP

    在容器详情页面还有logs stats页面可供查看

     日志页面:

     连日志信息输出也能看到

     INSPECT

     CPU 内存:

    至此windows docker 测试完成 新版很给力 基本无需再做配置 直接使用即可.监控数据也比较全面

  • 相关阅读:
    使用Redis的理由
    从输入网址到显示网页的全过程分析
    Node.js初识
    GET和POST的数据传递到底有何区别?
    第四五六周学习进度
    首尾相接整数数组中最大子数组的和
    网页版四则运算
    团队介绍及项目简介
    整数数组中最大子数组的和
    软件工程个人作业03
  • 原文地址:https://www.cnblogs.com/merray/p/15111848.html
Copyright © 2020-2023  润新知