日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
聊聊.NET 5 部署在Docker上運(yùn)行

本文轉(zhuǎn)載自微信公眾號「UP技術(shù)控」,作者conan5566。轉(zhuǎn)載本文請聯(lián)系UP技術(shù)控公眾號。

1、創(chuàng)建站點(diǎn)

創(chuàng)建一個(gè)ASP.NET Core Web應(yīng)用程序,選中啟用Docker支持。自動幫我們創(chuàng)建一個(gè)Dockerfile文件。

2、編寫Dockerfile文件

dockerfile是一個(gè)文件格式的配置文件,用戶可以使用dockerfile來快速構(gòu)建自定義的鏡像。由一行行命令語句組成,并且支持#開頭的注釋行。

dockerfile主題內(nèi)容一般分為4部分

基礎(chǔ)鏡像信息

維護(hù)者信息使用label指令

鏡像操作指令

容器啟動時(shí)執(zhí)行指令

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.

#For more information, please see https://aka.ms/containercompat

#FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base

#WORKDIR /app

#EXPOSE 80

#EXPOSE 443

#

#FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build

#WORKDIR /src

#COPY ["AA.Mvc/AA.Mvc.csproj", "AA.Mvc/"]

#RUN dotnet restore "AA.Mvc/AA.Mvc.csproj"

#COPY . .

#WORKDIR "/src/AA.Mvc"

#RUN dotnet build "AA.Mvc.csproj" -c Release -o /app/build

#

#FROM build AS publish

#RUN dotnet publish "AA.Mvc.csproj" -c Release -o /app/publish

#

#FROM base AS final

#WORKDIR /app

#COPY --from=publish /app/publish .

#ENTRYPOINT ["dotnet", "AA.Mvc.dll"]

# 父鏡像

#FROM microsoft/aspnetcore:5.0

#FROM mcr.microsoft.com/dotnet/core/aspnet:3.0-buster-slim AS baseWORKDIR /app

FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base

## 設(shè)置工作目錄

#WORKDIR /app

#

## 復(fù)制發(fā)布文件到/app下

#COPY . /app

#

## 設(shè)置端口

#EXPOSE 5005

EXPOSE 80

COPY . .

# 使用AA.Mvc.dll來運(yùn)行ASP.NET Core項(xiàng)目,注意大小寫

#ENTRYPOINT ["dotnet", "AA.Mvc.dll", "--server.urls", "http://*:5005"]

ENTRYPOINT ["dotnet", "AA.Mvc.dll"]

dockerfile文件指令說明:

FROM -指定所創(chuàng)建鏡像的基礎(chǔ)鏡像

WORKDIR-配置工作目錄

EXPOSE-聲明鏡像內(nèi)服務(wù)監(jiān)聽的端口

COPY-復(fù)制內(nèi)容到鏡像

ENTRYPOINT-啟動鏡像的默認(rèn)人口命令

3、編譯發(fā)布web項(xiàng)目

設(shè)置dockerfile文件輸出復(fù)制

發(fā)布完成

4、構(gòu)建鏡像,運(yùn)行容器并瀏覽

創(chuàng)建鏡像,可以使用命令docker build,如下所示:

docker build -t core-mvc .

這步可能會慢一些,因?yàn)樾枰螺d運(yùn)行環(huán)境,請耐心等待

參數(shù)分解:

-t ---指定鏡像名稱

命令結(jié)尾處 . ---表示build上下文為當(dāng)前目錄,默認(rèn)情況下docker會使用在上下文的根目錄下找到Dockerfile文件

查看鏡像列表,輸入一下命令

docker images

創(chuàng)建并啟動、查看容器

docker run --name netcore-mvc -d -p 50879:80 core-mvc

docker ps -a

參數(shù)說明

-d ,表示在后臺以守護(hù)態(tài)(daemonized)形式運(yùn)行容器

-p 外部端口與內(nèi)部容器端口映射。

--name 指定容器的名稱。當(dāng)然可以不指定,默認(rèn)會為我們創(chuàng)建

這里如果docker run失敗后再次運(yùn)行會提示名稱已存在,可以使用以下命令來刪除容器

docker rm -f netcore-mvc

最后一個(gè)參數(shù) core-mvc 就是我們剛創(chuàng)建的鏡像名稱,經(jīng)過以上4個(gè)步驟,在瀏覽器中輸入地址http://localhost:50879/查看如圖

至此一個(gè)完整的項(xiàng)目以手工的方式運(yùn)行在docker容器中。


網(wǎng)站標(biāo)題:聊聊.NET 5 部署在Docker上運(yùn)行
文章路徑:http://www.dlmjj.cn/article/dhsiiec.html