最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.NET?6?從0到1使用Docker部署至Linux環(huán)境超詳細(xì)教程

 更新時間:2022年05月24日 10:53:25   作者:Mamba8-24  
這篇文章主要介紹了.NET?6?從0到1使用Docker部署至Linux環(huán)境,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

前言

作為一名.Net菜鳥開發(fā)者,平時對Linux接觸的并不多,項目部署這一塊都是運(yùn)維小哥頂著,但是作為混跡在云原生項目組的人咱也不能什么都不知道,該掌握的知識還是要懂的,所以借著這次機(jī)會,梳理一下項目部署這塊的知識點(diǎn)。如果在閱讀的過程中發(fā)現(xiàn)有什么不合理的地方,還請多多指教!

環(huán)境準(zhǔn)備

VS2022
CentOS 7
Docker Desktop
.NetCore 6.0
Xshell 7

.NET Core項目準(zhǔn)備

1.首先我們先創(chuàng)建一個空的ASP.NET Core Web應(yīng)用

項目啟用Docker支持,然后會生成一個Dockerfile文件

我們來解析以下Dockerfile文件里面的內(nèi)容與流程

對多階段構(gòu)建感興趣的同學(xué)可以移步官網(wǎng) 使用多階段構(gòu)建

2.我們可以先在本地將項目構(gòu)建成鏡像看看效果

打開PowerShell 進(jìn)入項目解決方案目錄路徑

接下來我們將項目打包成鏡像:

docker image build -f ./NetCoreWeb/Dockerfile -t aspnetcore:latest .

注:這里使用 docker build -t aspnetcorewin .命令也可以,只不過有一些坑,遇到問題了可以在評論區(qū)交流

打包完成,我們可以使用Docker命令來查看鏡像:

docker images

我們也可以使用Docker Desktop客戶端查看鏡像

3.接下來我們將鏡像run起來,構(gòu)造出一個容器:

docker run --name=aspnetcorewin -p 8801:80 -d aspnetcorewin
  • --name :指定容器名稱。
  • --p :指定容器端口。
  • --d :指定容器后臺運(yùn)行。

查看正在運(yùn)行的鏡像:

docker ps

我們直接本地訪問我們映射的端口:localhost:8801

到這里我們在window上已經(jīng)可以成功訪問我們到項目了
接下來我們先對我們Linux服務(wù)器的環(huán)境進(jìn)行配置,方便后續(xù)部署項目

Linux環(huán)境配置:

使用XShell或其他工具連接上我們的Linux服務(wù)器

1.配置yum

更新yum包

sudo yum update

安裝yum-utils 用來管理yum源

sudo yum install -y yum-utils

查看資源庫中有沒有安裝過的docker rpm包

yum list installed | grep docker

如果之前安裝過可以不用安裝,如果想重新安裝也可以
執(zhí)行卸載老版本docker及其相關(guān)依賴即可:

sudo yum remove docker docker-common container-selinux docker-selinux docker-engine

2.安裝docker

yum -y install docker-ce

如果出現(xiàn) No package docker-ce available 錯誤,這里我們只需要設(shè)置穩(wěn)定的倉庫,添加yum源即可。

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

然后再執(zhí)行安裝Docker命令進(jìn)行安裝就可以了。

我當(dāng)時安裝的時候踩了一些坑
1.“sqlite3.OperationalError: database is locked” 這里可能是我之前中斷過yum的更新導(dǎo)致yum進(jìn)程被鎖了,最后把yum更新進(jìn)程殺掉就可以了。
2.安裝過程中一直停留在running transaction

3.啟動docker

啟動docker

sudo systemctl start docker

設(shè)置docker開機(jī)自啟動

sudo systemctl enable docker

查看docker是否運(yùn)行

systemctl status docker

4.安裝.NetCore SDK 6.0

安裝包配置

sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

執(zhí)行安裝

sudo yum install dotnet-sdk-6.0

安裝可能會花費(fèi)些時間,請耐心等待哦!

安裝完成

驗證安裝環(huán)境

dotnet --info

OK 環(huán)境配置完成!

Docker部署.NetCore 項目

調(diào)整Dockerfile文件屬性

我們先將Dockerfile文件屬性復(fù)制到輸出目錄的方式調(diào)整為** 如果較新則復(fù)制**,方便我們部署

項目打包,拷貝至Linux服務(wù)器上

接下來我們將項目打包,然后拷貝到linux服務(wù)器編譯發(fā)布
在linux上創(chuàng)建一個文件夾 NetCoreProgram

然后將我們打包好的項目拷貝至文件夾中
使用linux命令rz(會彈出一個上傳窗口)

--

運(yùn)行Dockerfile

進(jìn)入解壓完成的文件夾內(nèi)查看文件:

unzip -d NetCoreWeb NetCoreWeb.zip

接下來按照我們上述在window下將項目編譯成鏡像的操作,現(xiàn)在在linux環(huán)境下在執(zhí)行一遍:
編譯成鏡像(注意要在對應(yīng)文件目錄下執(zhí)行命令):

docker image build -f ./NetCoreWeb/Dockerfile -t aspnetcore:latest .

編譯完成,查看鏡像:

docker images

將鏡像run起來生成容器:

docker run --name=aspnetcore -p 8805:80 -d aspnetcore

查看容器是否生成成功:

docker ps

接下來我們使用curl命令來訪問程序:

curl localhost:8805

OK,訪問正常,到此我們的項目就部署完成啦!

使用外網(wǎng)訪問

使用服務(wù)器地址加開放的端口號:
本機(jī)(windows)直接訪問服務(wù)器地址 http://xxx.xxx.xxx.xx:8805/

OK ,訪問成功
這里使用外網(wǎng)訪問可能會遇到一些問題:
1.需要注意服務(wù)器的防火墻以及開放的端口
2.由于我這里是騰訊云的服務(wù)器,在云上它還有另外的一套安全組策略,也就是云上的防火墻,這里也需要開放端口
到此,我們的項目就部署完成啦!

結(jié)尾

當(dāng)然,這里只是用了最簡單的項目用來部署,實(shí)際情況中已經(jīng)上了CICD與k8s了,但是如果你連最基礎(chǔ)的都玩不轉(zhuǎn)的話,遇到更復(fù)雜的情況只能寸步難行哈。

到此這篇關(guān)于.NET 6 從0到1使用Docker部署至Linux環(huán)境的文章就介紹到這了,更多相關(guān)docker部署至Linux環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker服務(wù)假死的解決方法

    docker服務(wù)假死的解決方法

    工作中使用docker-compose部署容器,有時候會出現(xiàn)使用docker-compose stop或docker-compose down命令想停掉容器,但是依然無法停止或者一直卡頓在停止中的階段,所以本文給大家介紹了docker服務(wù)假死的解決方法,需要的朋友可以參考下
    2023-12-12
  • Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫的方法

    Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫的方法

    這篇文章主要介紹了Docker buildx構(gòu)建多平臺鏡像并推送到私有倉庫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Docker配置Redis集群及主從擴(kuò)容與縮容的操作方法

    Docker配置Redis集群及主從擴(kuò)容與縮容的操作方法

    這篇文章主要介紹了Docker配置Redis集群及主從擴(kuò)容與縮容的操作方法,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • 手把手教你docker部署(使用docker-compose)教程

    手把手教你docker部署(使用docker-compose)教程

    使用 Docker Compose 可以輕松、高效的管理容器,下面這篇文章主要給大家介紹了關(guān)于手把手教你docker部署(使用docker-compose)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • docker如何進(jìn)入啟動容器查看內(nèi)部目錄結(jié)構(gòu)

    docker如何進(jìn)入啟動容器查看內(nèi)部目錄結(jié)構(gòu)

    這篇文章主要介紹了docker如何進(jìn)入啟動容器查看內(nèi)部目錄結(jié)構(gòu)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 在Idea中使用Docker部署SpringBoot項目的詳細(xì)步驟

    在Idea中使用Docker部署SpringBoot項目的詳細(xì)步驟

    這篇文章主要介紹了在Idea中使用Docker部署SpringBoot項目的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • Windows下Docker安裝各種軟件的詳細(xì)過程

    Windows下Docker安裝各種軟件的詳細(xì)過程

    這篇文章主要介紹了Windows下Docker安裝各種軟件的詳細(xì)過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • docker配置skywalking 監(jiān)控springcloud應(yīng)用的詳細(xì)步驟

    docker配置skywalking 監(jiān)控springcloud應(yīng)用的詳細(xì)步驟

    本文分步驟給大家講解docker配置skywalking 監(jiān)控springcloud應(yīng)用的方法,感興趣的朋友一起看看吧
    2025-04-04
  • docker 安裝 Rabbitmq的基本步驟

    docker 安裝 Rabbitmq的基本步驟

    在平常的開發(fā)工作中,我們經(jīng)常會使用到 rabbitmq,rabbitmq 主要可以進(jìn)行應(yīng)用解耦、異步通信、流量削峰、負(fù)載均衡、消息持久化、死信隊列等,這篇文章給大家介紹docker 安裝 Rabbitmq的基本步驟,感興趣的朋友一起看看吧
    2025-04-04
  • 詳解docker pull下來的鏡像存儲在哪里

    詳解docker pull下來的鏡像存儲在哪里

    這篇文章主要介紹了詳解docker pull下來的鏡像存儲在哪里,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評論

中卫市| 遵化市| 大埔区| 山东省| 桑日县| 灵武市| 焦作市| 上林县| 修文县| 徐汇区| 抚松县| 南丰县| 荃湾区| 南京市| 夏河县| 平阳县| 获嘉县| 尚义县| 乌兰察布市| 土默特左旗| 杭锦后旗| 安泽县| 桐柏县| 夏河县| 翁牛特旗| 当雄县| 内江市| 柏乡县| 勃利县| 腾冲县| 临桂县| 河北省| 浮梁县| 伊宁市| 昂仁县| 博爱县| 玉门市| 淅川县| 凤冈县| 广东省| 乐平市|