命令行运行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命令参考:
测试接口
记得把云服务器或主机的指定端口打开。
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
查看容器创建情况
测试接口