.Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟
一、新建ASP.NET Core Web應(yīng)用,默認(rèn)勾選啟用容器支持


二、修改自動(dòng)生成的Dockerfile文件

# 使用 .NET 8.0 運(yùn)行時(shí)鏡像作為基礎(chǔ)鏡像 FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime WORKDIR /app # 設(shè)置時(shí)區(qū)(可選) ENV TZ=Asia/Shanghai RUN ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && dpkg-reconfigure -f noninteractive tzdata # 從當(dāng)前文件夾復(fù)制文件到容器 COPY . . # 設(shè)置可執(zhí)行文件的權(quán)限 RUN chmod +x WebApplication1 ENTRYPOINT ["./WebApplication1"]
三、發(fā)布項(xiàng)目
1、項(xiàng)目右鍵–>發(fā)布

2、發(fā)布設(shè)置–>目標(biāo)運(yùn)行時(shí)選:linux-64,文件發(fā)布選項(xiàng):生成單個(gè)文件


3、使用docker構(gòu)建鏡像、docker-compose啟動(dòng)容器
1.cmd(命令提示符) 切換目錄到 項(xiàng)目發(fā)布文件夾
2.使用docker構(gòu)建鏡像
3.使用docker-compose啟動(dòng)容器
4.導(dǎo)出鏡像,導(dǎo)入鏡像
4、項(xiàng)目發(fā)布目錄,新建docker-compose文件
刪除:appsettings.Development.json、*.pdb等多余文件
volumes:可掛載文件、文件夾(物理地址文件與docker容器地址對(duì)應(yīng))
services:
WebApplication1:
image: server/WebApplication1:1.0.0.0
container_name: WebApplication1
volumes:
# #window path
- /C/Users/Desktop/test/WebApplication1/WebApplication1/bin/Release/net8.0/publish/appsettings.json:/WebApplication1/appsettings.json
- /C/Users/Desktop/test/WebApplication1/WebApplication1/bin/Release/net8.0/publish/logs:/WebApplication1/logs
restart: always
build:
context: .
dockerfile: Dockerfile
ports:
- "8088:8088"
5、Docker Desktop安裝
下載地址:https://www.docker.com/blog/docker-desktop-4-38/
6、cmd執(zhí)行
# 構(gòu)建鏡像時(shí)指定標(biāo)簽(server/WebApplication1:1.0.0.0要與上方docker-compose文件中image一致) docker build -t server/WebApplication1:1.0.0.0 . # 后臺(tái)啟動(dòng)容器 docker-compose up --detach # 將鏡像導(dǎo)出為.tar文件 docker save -o WebApplication1.tar WebApplication1 # 將文件壓縮成.7z文件(如果掛載了appsettings.json文件,壓縮時(shí)需要將.tar、appsettings.json、docker-compose三個(gè)一起壓縮為WebApplication1.tar.7z) #將.7z文件上傳至服務(wù)器,切換到文件目錄,解壓縮 7z x WebApplication1.tar.7z #在服務(wù)器上導(dǎo)入Docker鏡像 docker load -i WebApplication1.tar # 后臺(tái)啟動(dòng)容器 docker-compose up --detach # 查看容器 docker ps # 查看容器日志 docker log WebApplication1 # 停止容器 docker stop WebApplication1 #刪除容器 docker rm WebApplication1 # 查看鏡像 docker images #刪除鏡像 docker rmi WebApplication1
7、window docker容器運(yùn)行查看

到此這篇關(guān)于.Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟的文章就介紹到這了,更多相關(guān).Net8使用docker、docker-compose部署內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- .NET 5 部署在docker上運(yùn)行的方法
- Linux系統(tǒng)Docker 部署 ASP.NET Core應(yīng)用的流程分析
- 部署.Net6項(xiàng)目到docker
- Docker部署Mysql,.Net6,Sqlserver等容器
- ASP.NET Core開發(fā)Docker部署
- .Net?Core部署Docker容器
- 使用Docker部署ASP.NET?Core程序
- .Net項(xiàng)目在Docker容器中開發(fā)部署
- .NET?6?從0到1使用Docker部署至Linux環(huán)境超詳細(xì)教程
- Linux系統(tǒng)docker部署.net?core3.1的詳細(xì)步驟
- .NET?8?部署到?Docker的詳細(xì)過程
相關(guān)文章
docker安裝prometheus和grafana的詳細(xì)過程
prometheus通過各種Exporter采集到監(jiān)控?cái)?shù)據(jù),然后存儲(chǔ)進(jìn)prometheus中,以供查詢展示,這篇文章主要介紹了docker安裝prometheus和grafana,需要的朋友可以參考下2023-02-02
使用 Docker 部署 GitLab 并持久化數(shù)據(jù)的實(shí)例步驟
本文將詳細(xì)介紹如何使用 Docker 部署 GitLab,并將數(shù)據(jù)(如倉庫、配置、日志等)持久化到主機(jī)磁盤,我們還將解決常見的端口沖突問題,并介紹如何從另一臺(tái) GitLab 恢復(fù)數(shù)據(jù)到新的 GitLab 實(shí)例,感興趣的朋友一起看看吧2025-05-05
通過docker?create與export分析診斷故障鏡像
在容器化技術(shù)主導(dǎo)現(xiàn)代應(yīng)用部署的今天,Docker鏡像的可靠性直接影響著系統(tǒng)的穩(wěn)定性,然而,當(dāng)開發(fā)者面對(duì)一個(gè)無法正常啟動(dòng)的"問題鏡像"時(shí),傳統(tǒng)的調(diào)試手段往往顯得捉襟見肘,此時(shí),docker?create與docker?export的組合技可以解決這個(gè)問題,下面小編給大家詳細(xì)說說2025-04-04
煮餃子論云原生docker與kubernetes之間的關(guān)系
這篇文章主要為大家用煮餃子論的道理來為大家講解一下云原生docker與kubernetes之間的關(guān)系,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-03-03
編寫Dockerfile和構(gòu)建自定義鏡像的步驟與技巧
Docker已經(jīng)成為現(xiàn)代應(yīng)用程序開發(fā)和部署的重要工具之一,在Docker中,Dockerfile是定義和構(gòu)建自定義鏡像的鍵文件,本文將深入解讀Dockerfile的編寫和自定義鏡像的構(gòu)建過程,并分享一些實(shí)用的技巧和最佳實(shí)踐,需要的朋友可以參考下2023-07-07

