.net core 2.2 webpi项目在linux中docker部署小计

linux用的是centos7.

  1. 首先执行命令 安装docker  yum install -y docker
  2. 安装完成之后执行 docker version 查看是否安装成功,设置开机启动   
     systemctl enable docker
     systemctl start docker
  3. 拉取官方docker,本文拉取的是.netcore2.2版本

      docker pull microsoft/dotnet:2.2-aspnetcore-runtime

      执行docker images 查看镜像看到镜像已经拉取过来

  4. 新建.netcore webapi项目,并新建Dockefile

      文件内容如下

    #指定基础镜像
    FROM microsoft/dotnet:2.2-aspnetcore-runtime

    #指定工作目录 

    WORKDIR /publish

    #把当前程序文件复制到工作目录
    COPY . /publish
    ENTRYPOINT ["dotnet", "webapi.dll"]

  5. 发布项目和之前一样,在vs中点击发布,目标运行时选择 可移植,其他默认即可

    把发布后的文件和Dockfile文件一期复制到Centos7中,打包项目成为镜像
    docker build -t webapi .

    运行镜像,name参数用来指定容器名称 p代表容器内容内部的8080端口映射到主机的8080端口 d代表后台运行 webapi代表运行容器使用的镜像

    docker run --name mywebapi -p 8080:8080 -d webapi 

    然后运行docker ps查看正在运行的容器。可以看到有一个容器name是mywebapi的容器已经在运行了。

    通过浏览器访问http://localhost:8080/api/values 可以查看网站已经在运行了

原文地址:https://www.cnblogs.com/Playfunny/p/12411955.html