1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
      <output id="hzk7v"></output>
    2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
    3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

      .net 4.5部署到docker容器的完整步骤

       更新时间£º2019年04月11日 08:55:04   作者£º张占岭   我要评论

      这篇文章主要给大家介绍了关于.net 4.5部署到docker容器的完整步骤£¬文中通过示例代码介绍的非常详细£¬对大家学习或者使用.net4.5具有一定的参考学习价值£¬需要的朋友们下面来一起学习学习吧

      前言

      本文主要给大家介绍了关于.net 4.5部署到docker容器的相关内容£¬分享出来供大家参考学习£¬下面?#23433;?#22810;说了£¬来一起看看详细的介绍吧

      .net4.5部署到docker容器

      • 部署到windows容器
      • 部署到linux容器

      部署到windows容器

      由于.net本身就是运行在windows?#25945;?#30340;£¬所?#36816;?#19982;windows容器也是更加适合£¬你可以以iis镜像为基础£¬去编写你的Dockerfile文件£¬从而去构建你的.net项目镜像¡£

      1.两个现成的例子

      .net console程序

      docker run --rm mcr.microsoft.com/dotnet/framework/samples:dotnetapp

      .net web程序

      docker run -it --rm -p 8000:80 --name aspnet_sample mcr.microsoft.com/dotnet/framework/samples:aspnetapp

      1.为自?#21512;?#30446;添加一个Dockerfile构建镜像

      FROM microsoft/aspnet 
      ARG source 
      WORKDIR /inetpub/wwwroot 
      COPY ${source:-obj/Docker/publish} . 

      参考£ºhttps://docs.microsoft.com/en-us/aspnet/mvc/overview/deployment/docker-aspnetmvc

      部署到linux容器

      对于非.net core的应用程序来说£¬要想在linux?#25945;?#36816;行需要安装mono框架£¬这是在linux?#25945;?#36816;行.net程序的唯一方法£¬那么如果想把.net程序部署到linux容器里£¬也是一样的方法过程£¬你需要构建一个安装有mono环境的镜像¡£

      为自己的项目添加一个基于mono的Dockerfile

      制作一个console app的Dockerfile并运行

      FROM mono:latest
      RUN mono --version
      WORKDIR /app
      COPY ./bin/Debug/ .
      CMD [ "mono", "monoApp.exe" ]

      打包镜像

      cd monoapp #Docfile所在目录£¬它一般在项目根目录
      docker build . -t monoapp
      docker run monoapp

      执行结果

      MacBook-Pro-6:monoApp lind.zhang$ docker run monoapp
      Hello World!
      MacBook-Pro-6:monoApp lind.zhang$

      制作一个.net web的Dockerfile并运行

      前提:我们的web项目要想运行£¬需要有一个像IIS一种的服务器组件£¬在linux里我们一般使用jexus来实现这个功能£¬也就是说£¬我们的docker镜像应该即有mono还要有jexus的集成£¬这个镜像我们可以自己写£¬?#37096;?#20197;使用现成的镜像azraelrabbit/monupw£¬下面的Dockerfile?#21069;?#19968;个web项目monoMvc打包成一个镜像¡£

      先把镜像拉到本地

      docker pull azraelrabbit/monupw

      部署的步骤

      1. 建立Dockerfile文件£¬发布网站时应?#20040;?#19978;
      2. 发布网站
      3. 进行发?#24049;?#30340;地址
      4. 打包 docker build . -t 镜像名称
      5. 启动容器 docker run -d -p 8080:80 镜像名称

      编写Dockerfile文件

      FROM azraelrabbit/monupw
      EXPOSE 80
      WORKDIR /data
      COPY ./bin/ .

      启动你的容器£¬对外访问用8080端口£¬容器内部是80端口

      MacBook-Pro-6:monoMvc lind.zhang$ docker run -p 8080:80 monomvc
      Starting ... OK

      总结

      以上就是这篇文章的全部内容了£¬希望本文的内容对大家的学习或者工作具有一定的参考学习价值£¬谢谢大家对脚本之家的支持¡£

      相关文章

      最新评论

      3dÊÔ»úºÅÖвÊÍø

        1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
          <output id="hzk7v"></output>
        2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
        3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>

            1. <output id="hzk7v"><pre id="hzk7v"><address id="hzk7v"></address></pre></output>
              <output id="hzk7v"></output>
            2. <nav id="hzk7v"><i id="hzk7v"><em id="hzk7v"></em></i></nav>
            3. <listing id="hzk7v"><delect id="hzk7v"><em id="hzk7v"></em></delect></listing>