激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - ASP.NET教程 - Linux服務(wù)器下利用Docker部署.net Core項(xiàng)目的全過程

Linux服務(wù)器下利用Docker部署.net Core項(xiàng)目的全過程

2020-06-16 12:35傅小灰 ASP.NET教程

這篇文章主要給大家介紹了關(guān)于在Linux服務(wù)器下利用Docker部署.net Core項(xiàng)目的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用.net Core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧

發(fā)布ASP.NET Core項(xiàng)目

和普通的項(xiàng)目發(fā)布一樣,將項(xiàng)目發(fā)布到目標(biāo)文件夾中

構(gòu)建Dockerfile文件

在目標(biāo)文件根目錄新建Dockerfile文件(沒有后綴)

?
1
2
3
4
5
FROM microsoft/dotnet//基于'microsoft/dotnet' 來構(gòu)建鏡像
COPY . /app //拷貝項(xiàng)目文件夾中的所有文件到docker容器中的app文件夾 這里是兩個(gè)參數(shù)
WORKDIR /app //設(shè)置工作目錄為 '/app' 文件夾,即容器啟動(dòng)默認(rèn)的文件夾
EXPOSE 80 //設(shè)置Docker容器對(duì)外暴露80端口
CMD ["dotnet", "Core.Web.dll"] //使用'dotnet Core. Web.dll'來運(yùn)行應(yīng)用程序

上傳項(xiàng)目文件

1.將項(xiàng)目構(gòu)建為鏡像

將文件上傳到Linux的www目錄下,使用命令構(gòu)建成鏡像

?
1
docker build -t testcore . //-t 指定鏡像名 . 表示Dockerfile所在目錄

注意 dockerfile中基于microsoft/aspnetcore或microsoft/dotnet來構(gòu)建鏡像(dotnet>aspnetcore)需要以服務(wù)器上安裝的鏡像版本做區(qū)分

構(gòu)建成功,在鏡像中可以看到新建的鏡像

Linux服務(wù)器下利用Docker部署.net Core項(xiàng)目的全過程

2.將鏡像發(fā)布為容器

?
1
2
3
4
5
6
docker run --name testapp -d -p 8000:80 -v /www:/app testcore
--name指定容器名稱
-d 指定容器后臺(tái)運(yùn)行
-p 指定外部8000端口映射到容器80端口
-v 綁定數(shù)據(jù)卷/www到容器內(nèi)的/app (本地目錄:容器內(nèi)目錄)本地目錄必須為絕對(duì)路徑
testcore鏡像名

3.查看容器是否是否處于運(yùn)行狀態(tài),若啟動(dòng)失敗顯示為exit,可查看日志

?
1
2
3
4
docker ps -a //查看所有容器的運(yùn)行狀態(tài)
 
docker exec -it testapp bash //若容器正在運(yùn)行,進(jìn)入容器內(nèi)部
docker logs testapp//若容器未運(yùn)行,查看報(bào)錯(cuò)日志

4.請(qǐng)求網(wǎng)站查看網(wǎng)站是否運(yùn)行成功

?
1
2
curl 0.0.0.0:8000
curl -s -D - localhost:8000 -o /dev/null //查看請(qǐng)求返回信息

最后查看防火墻端口開放情況,以及阿里云后臺(tái)安全組端口開放情況(如果你是用的阿里云服務(wù)),再通過外網(wǎng)訪問瞅瞅

5.更新代碼

由于在創(chuàng)建容器的時(shí)候映射了數(shù)據(jù)卷,則當(dāng)有靜態(tài)文件更新的時(shí)候,會(huì)自動(dòng)更新到容器內(nèi)。
但是當(dāng)有dll文件更新時(shí),需要手動(dòng)重啟一下容器

?
1
docker restart testapp

以上,實(shí)現(xiàn)了將一個(gè)Asp.Net Core MVC項(xiàng)目發(fā)布到docker中的全過程。目前容器中只有一個(gè)dotnet鏡像,通過地址訪問網(wǎng)站實(shí)際上直接訪問的Kestrel服務(wù)器。

一些額外的想法

Kestrel服務(wù)器只是一個(gè)輕量級(jí)的web服務(wù)器,并且不支持基于主機(jī)名的綁定(如果1臺(tái)服務(wù)器部署了多個(gè) ASP.NET Core 站點(diǎn),每個(gè)站點(diǎn)需要使用不同的端口)

出于安全性考慮(包括但不限于適當(dāng)?shù)某瑫r(shí),大小的限制,以及并發(fā)連接限制等問題)需要在Kestrel和Internet之間加入一個(gè)反向代理服務(wù)器(IIS,Nginx或者Apache)

下一篇,描述一下我在使用nginx轉(zhuǎn)發(fā)請(qǐng)求給Kestrel時(shí)遇到的問題。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)服務(wù)器之家的支持。

原文鏈接:https://www.cnblogs.com/cplemom/p/11142857.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久性生活免费视频 | 色屁屁xxxxⅹ在线视频 | 欧美成人福利 | 深夜影院a| av性色全交蜜桃成熟时 | 免费毛片电影 | 日本高清在线播放 | 史上最强炼体老祖动漫在线观看 | 91精品久久久久久久久久久 | 午夜久| 免费黄色在线观看网站 | av在线免费不卡 | 久久精品视频日本 | 欧美日韩网站在线观看 | 国产精品久久久久久久亚洲按摩 | 国产免费激情视频 | 免费午夜网站 | 99亚洲精品 | 性大片免费看 | 永久免费不卡在线观看黄网站 | 91福利国产在线观一区二区 | 日本va在线观看 | 视频一区免费观看 | 亚洲一区播放 | 午夜a狂野欧美一区二区 | 欧美成人免费 | 韩日黄色片 | 国产一区二区三区视频观看 | 羞羞视频在线免费 | 毛片一区二区三区 | 久草干| gril hd | 久久免费视频7 | 欧美一级黄色录相 | 国产乱淫av| 九色激情网 | 国产视频aa | 国产免费视频一区二区裸体 | 手机黄网www8xcn | 欧美人与性禽动交精品 | 国产一区二区视频精品 |