Net Core 微服務 - 如何在docker容器裡執行一個簡單的.net core web api 服務
阿新 • • 發佈:2021-10-08
1.新建一個WebApi專案
預設的web api專案包含一個預設的api:/weatherforecast
2. 新建一個Dockerfile檔案
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base WORKDIR /app EXPOSE 80 FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build WORKDIR /src COPY ["CoreApi.csproj", "."] RUN dotnet restore "./CoreApi.csproj" COPY . . WORKDIR "/src/." RUN dotnet build "CoreApi.csproj" -c Release -o /app/build FROM build AS publish RUN dotnet publish "CoreApi.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY--from=publish /app/publish . ENTRYPOINT ["dotnet", "CoreApi.dll"]
3. 通過Dockerfile生成Docker映象檔案
在Dockerfile所在目錄開啟命令列工具執行如下命令:
docker build -t coreapi1 .
4. 執行Docker映象
docker run --name coreapi1 -d -p 30006:80 coreapi1
--name coreapi1 設定容器的名稱
-p 30006:80 引數把容器的80埠對映到宿主機的30006埠。
最後的coreapi1是映象的名稱。
5. 訪問Docker容器裡的Api介面
http://localhost:30006/weatherforecast
通過以上地址可以訪問到對應的api,截圖如下: