Net Core教程

LINUX下使用Docker容器部署.NetCore项目

本文主要是介绍LINUX下使用Docker容器部署.NetCore项目,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

命令行运行Core接口

随便建个接口

using Microsoft.AspNetCore.Mvc;

namespace EasyCore.API.Controllers
{
    public class DemoController : ControllerBase
    {
        /// <summary>
        /// 最精简:测试是否调通
        /// </summary>
        /// <returns></returns>
        public ActionResult HelloWorld()
        {
            return Ok("调用成功");
        }
    }
}

发布后,在命令行中cd到该目录,执行对应项目的dll
前者使用launchsettings.json内配置的url与端口。后者使用指定url与端口。

dotnet EasyCore.API.dll

dotnet EasyCore.API.dll --urls="http://*:8888" --port=8888

Linux下Docker拉取Core依赖镜像

docker pull mcr.microsoft.com/dotnet/core/aspnet:latest

先发布后部署

将发布文件夹内的文件上传到Linux下的指定文件夹

我传到了linux根目录下的/CoreHello/publish中

执行以下命令:

docker run -d --name="CoreApi001" -p 8083:80 -v /CoreHello/publish:/app --workdir /app mcr.microsoft.com/dotnet/core/aspnet  dotnet /app/EasyCore.API.dll

run:创建新容器
-d:后台运行该容器
--name:给容器命名(CoreApi001)
-p:指定端口映射(物理机的8083端口,映射到这个容器的80端口)
-v:挂载目录(将物理机的/CoreHello/publish目录,挂载到容器的/app目录)
--workdir:设置容器的工作目录(/app)
最后通过命令行运行

Docker命令参考:

https://www.runoob.com/docker/docker-run-command.html

测试接口
记得把云服务器或主机的指定端口打开。

DockerFile部署

给项目添加docker支持,选择linux,自动生成dockerFile文件。

整个项目上传到Linux

将整个解决方案的文件夹都上传到linux下。
我上传到了linux根目录下/CoreHello/ProjectDockerFile内。

cd到dockerfile文件所在的目录
通过dockerfile文件创建包含core接口的容器的镜像

docker build -t coreapi.101 -f Dockerfile .

创建容器实例(物理机的8082端口映射到容器的80端口)

docker run -itd -p 8082:80 coreapi.101

查看容器创建情况

测试接口

这篇关于LINUX下使用Docker容器部署.NetCore项目的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!