ubuntu中使用docker部署.netcore2.1

 

 概述   

   .netcore发布这么久,到现在才在项目中实际运用,之前算是了解一点,一般找工作都会问是否运用过.netcore,软件研发来说,如果这个技术没用过,觉得挺难,其实不难。.netcore主要是跨平台,可以部署在不同的操作系统上。

本文通过一些实例,将.netcore Api项目部署在linux环境中。

 用到的工具

 Linux : Linux version 4.18.0-17-generic (buildd@lcy01-amd64-022) (gcc version 8.2.0 (Ubuntu 8.2.0-7ubuntu1)) 

 Windows与Linux交互工具:MobaXterm 6.6.exe,支持远程连接和上传附件功能

 搭建步骤

  •  创建.netcore2.1 Api项目

 我的IDE是VS 2017,创建一个.netcore Api项目后,目录结果如图

如开始时未添加Docker支持,选择是linux还是windows,具体操作如下

  • 修改Docker配置文件,

 

复制代码
复制代码
FROM microsoft/dotnet:2.1-aspnetcore-runtime AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY ["./ApiNetCore.csproj", "./"]
RUN dotnet restore "ApiNetCore.csproj"
COPY . .
WORKDIR "/src"
RUN dotnet build "ApiNetCore.csproj" -c Release -o /app

FROM build AS publish
RUN dotnet publish "ApiNetCore.csproj" -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "ApiNetCore.dll"]
复制代码

 

复制代码

 

 

  • 将本地源代码通过MobaXterm上传到Linux目录,显示目录结构如下:

  •  开始构造镜像image:运行命令【sudo docker build -t apinetcoredocker:1.0.0  . 】

    命令中,【apinetcoredocker】代表镜像名称,可以修改成自己所需要的名称。也可以为镜像添加tag,修改【apinetcoredocker】成【apinetcoredocker:1.0.0】为镜像打上1.0.0的tag标签。命令最后面的【.】号是必要的,是dockerfile在当前目录运行docker的意思。详细命令可查看:http://www.runoob.com/docker/docker-build-command.html

镜像创建成功如图

  • 创建容器并运行

            在运行应用程序【sudo docker run --name apinetcoredocker1  -p 8009:80  apinetcoredocker:1.0.0】

    -p是8009是容器对外端口,80是容器内机器端口。意思是映射外网8081端口到本地容器80端口。

          

  • 最后在浏览器中输入地址,进行测试

          

参考实例:https://www.cnblogs.com/alunchen/p/10139356.html

感谢原著分享!

 

posted @   低调码农哥!  阅读(1295)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示