.NET 微服务入门

前置条件

  1. 安装 .NET SDK (目前.NET 7.0) 2023年6月10日
  2. 安装Docker

前置条件自己搞定。

检查.NET 和Docker 是否安装成功

#查看.NET 是否安装成功
dotnet --version

#查看 Docker 是否安装成功
docker --version

image.png

说明:
由于我这边安装了最新.NET 8 预览版所以显示的是最新的版本。具体看自己的安装版本。

创建服务

可以使用 .NET CLI 命令创建或 VS 创建。

这里直接用 .NET CLI 命令创建

dotnet new webapi -o MyMicroservice --no-https -f net7.0

** 命令说明 :
dotnet 命令:创建一个 webapi 项目
-o 参数:创建 文件夹名 MyMicroservice 用于存放这个项目。
--no-https:** 表示不使用 HTTPS证书。
-f:表示要创建 .NET 7 的应用

cd MyMicroservice

命令说明:
切换到 MyMicroservice 目录。

运行服务

dotnet run

浏览器访问接口:
http://localhost:/WeatherForecast

添加 Docker 元数据

为了运行 Docker 镜像,我们需要一个 Dockerfile 文件。这个文件包含了如何构建我们的应用的镜像的说明。

Docker 镜像包含了作为 Docker 容器运行应用程序所需的内容。

**PS: **挖个坑,写一篇 Docker 相关的文章。

在我们应用的项目文件夹下创建 Dockerfile
(在 MyMicroservice 文件夹下面)

文件名一定要叫 Dockerfile。

fsutil file createnew Dockerfile 0
start Dockerfile

将如下内容拷贝到 Dockerfile

FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src
COPY MyMicroservice.csproj .
RUN dotnet restore
COPY . .
RUN dotnet publish -c release -o /app

FROM mcr.microsoft.com/dotnet/aspnet:7.0
WORKDIR /app
COPY --from=build /app .
ENTRYPOINT ["dotnet", "MyMicroservice.dll"]

PS:再挖个坑,写一篇 Dockerfile 相关的文章。
可选项:添加 .dockerignore 文件
.dockerignore 文件是为了在执行 docker build 命令时减少不必要的文件,从而加快构建速度。

fsutil file createnew .dockerignore 0
start .dockerignore

将下面内容拷贝到 .dockerignore 中。

Dockerfile
[b|B]in
[O|o]bj

创建 Docker 镜像

docker build -t mymicroservice .

命令说明:、
docker build:使用 Dockerfile 去构建 Docker 镜像
**-t mymicroservice 参数:镜像名称为 mymicroservice
最后一个参数告诉使用哪个目录来查到 Dockerfile
(
. **指定当前工作目录)

创建完成结果:
image.png

构建完成后看一下本机的可用镜像有哪些

docker images

运行 Docker 镜像

docker run -it --rm -p 3000:80 --name mymicroservicecontainer mymicroservice

查看 当前正在运行的 docker 镜像

docker ps

image.png

posted @ 2023-06-10 16:53  SignX  阅读(279)  评论(0编辑  收藏  举报