.net core 5 Docker Centos发布


一、环境

  框架.Net5 => .net core 5 web 

  开发工具 visual studio 2019  版本:16.8.x

  发布服务器:Linux => Centos 7.x

二、项目发布

  1、发布准备

    添加docker支持(Dockerfile)->  选择Linux -> 生成Dockerfile文件

    

    Dockerfile解读

              

 

 

 

  2、源码镜像制作

      2.1将源码拷贝到Centos指定目录下,并在源码总文件夹的同级目录下,复制Dockerfile文件

               

     2.2 进入到Dockerfile同级目录,进行镜像构建

     

 

    使用docker构建命令进行构建:docker build -t dockerpublish -f Dockerfile . 

    -t :镜像名称(必须小写)  -f :Dockerfile文件 最后圆点指定dockfile文件 
    

  3、非源码挂载方式

    3.1 在visual studio 中进行web项目发布,并上传文件到服务器

      

    3.2 挂载到docker中 

      docker run -d -p 5001:80 -v /home/dotNet5Projects/LinuxDockerNginxPublish/LinuxDockerNginxPublish:/app --workdir /app mcr.microsoft.com/dotnet/aspnet dotnet /app/LinuxDockerNginx.dll

      -p:指定物理主机5001端口映射到docker容器80端口 

      -v:复制物理主机中的文件到docker容器中的指定目录 

      --workdir:指定后续指令目录

                   mcr.microsoft.com/dotnet/aspnet:指定对应的基础镜像  使用dotnet命令运行项目dll

  4、运行项目

    docker run -itd -p 5000:80 dockerpublish

    -itd:交互式后台启动

      

 

     -p:指定物理主机5001端口映射到docker容器80端口 

    dockerpublish:镜像名称

  三、docker 常见命令

   docker run:docker run相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)

   docker start :启动已存在的镜像

   docker  stop:停止镜像

   docker  stop $(docker ps -q):停止所有镜像

   docker images:docker中的所有镜像

   docker ps -a :显示容器列表 -a 显示所有容器(默认显示正在运行)

   docker pull:拉取镜像   name:tag 指定版本,默认latest

   docker search:搜索的范围是官方镜像和所有个人公共镜像

   docker rm :删除容器

   docker rmi:删除镜像

   docker rm $(docker ps -aq):删除所有停止的容器

        docker exec -it 容器ID /bin/bash :进入指定id的容器    


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM