Linux系統(tǒng)docker部署.net?core3.1的詳細(xì)步驟
此篇文章演示基本的基于docker部署.netcore服務(wù),linux系統(tǒng)騰訊云ubuntu,.net core版本3.1。
1.安裝docker
apt install docker.io
2.拉取.net core依賴鏡像
docker pull mcr.microsoft.com/dotnet/core/aspnet:latest
3.創(chuàng)建.net core3.1項(xiàng)目
選擇docker支持,會(huì)生成dockerFile配置文件如圖:
4.編寫dockerfile文件,經(jīng)刪減后為:
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster WORKDIR /app EXPOSE 5000 COPY . . ENTRYPOINT ["dotnet", "MyDockerApi.dll"]
5.發(fā)布項(xiàng)目到本地
注意下,dockerFile文件一定要帶過來,接下來,將所有文件,壓縮成zip包。。最好是zip,不然linux解壓很麻煩
6.在linux系統(tǒng)根目錄
新建(mkdir)project文件夾,進(jìn)入(cd)project文件夾,繼續(xù)新建myDockerApi文件夾,然后進(jìn)入。
7.上傳剛才的zip壓縮包,并解壓
上傳命令:rz -y,本地選擇,上傳進(jìn)來,解壓命令:unzip -o MyDockerApi.zip
8.鏡像打包
docker build -t my1api . 注意最后有一個(gè).,
9.創(chuàng)建基于該鏡像的docker容器,并啟動(dòng)
命令:docker run --name API8082 -p 8081:5000 my1api ,參數(shù)解讀:
--name xxxxx:容器名字
8081:將liunx端口分配給該容器的端口
:5000:將物理機(jī)端口映射到docker程序的啟動(dòng)端口
my1api:使用的鏡像名稱
可以看到,服務(wù)已經(jīng)起來了,這時(shí)候,如果外部想要訪問服務(wù),需要在騰訊云防火墻新增出站端口8081
這時(shí)候,訪問服務(wù)接口:
使用命令,列出當(dāng)前所有容器,狀態(tài)等等:
docker container ls -a
容器的啟動(dòng)/停止命令:
docker start API8082(容器名稱/ID) docker stop API8082(容器名稱/ID)
10.如果代碼更新了,怎么辦
(1)將更新好的代碼上傳
(2)重新build鏡像
(3)停止docker容器
(4)刪除docker容器 docker rm 容器名稱/ID
(5)重新創(chuàng)建容器并啟動(dòng) docker run --name API8082 -p 8081:5000 my1api
到此這篇關(guān)于Linux系統(tǒng)docker部署.net core3.1的文章就介紹到這了,更多相關(guān)docker部署.net core3.1內(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ì)教程
- .NET?8?部署到?Docker的詳細(xì)過程
- .Net8項(xiàng)目使用docker、docker-compose部署的圖文步驟
相關(guān)文章
vscode中啟用docker擴(kuò)展顯示無權(quán)限的問題解決
這篇文章主要介紹了如何解決vscode中啟用docker擴(kuò)展顯示無權(quán)限的問題,并介紹允許VSCode進(jìn)入Docker內(nèi)部進(jìn)行調(diào)試的插件,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-03-03解決運(yùn)行Docker鏡像報(bào)錯(cuò):version `GLIBC_2.32‘ not found
文章介紹了解決Docker鏡像運(yùn)行時(shí)因GLIBC版本不匹配導(dǎo)致的錯(cuò)誤,建議使用AlpineLinux作為基礎(chǔ)鏡像,并在其中安裝所需的運(yùn)行時(shí)庫(kù),作者還分享了個(gè)人經(jīng)驗(yàn),提醒讀者嘗試其他方法無效后可以尋求幫助2024-12-12maven構(gòu)建docker鏡像push到鏡像倉(cāng)庫(kù)方式
這篇文章主要介紹了maven構(gòu)建docker鏡像push到鏡像倉(cāng)庫(kù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11Docker多個(gè)容器不能有相同端口號(hào)的處理方案
這篇文章主要介紹了Docker多個(gè)容器不能有相同端口號(hào)的處理方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03使用docker compose安裝FastDfs文件服務(wù)器的實(shí)例詳解
這篇文章主要介紹了使用docker compose安裝FastDfs文件服務(wù)器的實(shí)例詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-10-10docker寫一個(gè)Dockerfile文件的實(shí)現(xiàn)
Dockerfile 是一個(gè)用來構(gòu)建鏡像的文本文件,文本內(nèi)容包含了一條條構(gòu)建鏡像所需的指令和說明,本文主要介紹了docker寫一個(gè)Dockerfile文件的實(shí)現(xiàn)2024-01-01docker實(shí)現(xiàn)MySQL的主從復(fù)制
在學(xué)習(xí)項(xiàng)目的時(shí)候?qū)崿F(xiàn)讀寫分離用到了主從復(fù)制,但是一般要實(shí)現(xiàn)的話需要虛擬機(jī)或服務(wù)器非常麻煩,但是docker可以完美解決這一問題,本文主要介紹了docker實(shí)現(xiàn)MySQL的主從復(fù)制,感興趣的可以了解一下2024-01-01Docker安裝RabbitMQ并安裝延時(shí)隊(duì)列插件
本文主要介紹了Docker安裝RabbitMQ并安裝延時(shí)隊(duì)列插件,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Docker Compose部署微服務(wù)項(xiàng)目上線功能
這篇文章主要介紹了Docker Compose部署微服務(wù)項(xiàng)目上線,需求是這樣的編寫一個(gè)SpringBoot + Redis 的微服務(wù)項(xiàng)目,并提供 hello接口,每訪問一次接口,計(jì)數(shù)器+1,本文給大家分享實(shí)現(xiàn)思路,需要的朋友可以參考下2022-07-07