创建.netcore grpc服务
制作pfx证书
有个个工具,审核中。。
下载该工具制作
创建gRPC 服务项目
设置appseting.json 文件中对证书的配置
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"certificateSettings": {
"fileName": "server.pfx",
"password": "pwd"
},
"Kestrel": {
"Endpoints": {
"HttpsInlineCertFile": {
"Url": "https://*:5004",
"Protocols": "Http2",
"Certificate": {
"Path": "server.pfx",
"Password": "pwd"
}
}
}
}
}
注意证书要复制的输出目录
另外端口与后面的dockerfile要一致 :5004 ,可自行设置一致
编辑dockerfile
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 5004
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["GrpcService1/GrpcService1.csproj", "GrpcService1/"]
RUN dotnet restore "GrpcService1/GrpcService1.csproj"
COPY . .
WORKDIR "/src/GrpcService1"
RUN dotnet build "GrpcService1.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "GrpcService1.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENV ASPNETCORE_URLS https://+:5004
ENTRYPOINT ["dotnet", "GrpcService1.dll"]
docker 部署
拷贝项目文件到linux
到dockerfile所在目录运行一下命令
构建镜像
docker build -t grpctest:v1 .
运行容器
docker run -d -p 9998:5004 --name grpctest:v1
主要就以上步骤