《ASP.NET Core 与 RESTful API 开发实战》-- (第10章)-- 读书笔记
第 10 章 部署
10.1 部署到 IIS
ASP.NET Core 應用程序支持部署到 IIS 中,之后它將作為應用程序的反向代理服務器和負載均衡器,向應用程序中轉傳入的 HTTP 請求
默認情況下,ASP.NET Core 項目的 Program 類使用如下方式創建 WebHost
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder =>{webBuilder.UseStartup<Startup>();});CreateDefaultBuilder 方法將會調用 UseIIS 方法和 UseIISIntergration 方法,分別用于 IIS 進程內托管方式以及 IIS 進程外托管方式
無論使用哪一種部署方式,都應該先發布應用
發布 ASP.NET Core 應用程序有兩種方式,分別是使用 Visual Studio 中的發布向導以及使用 .NET Core CLI 命令
首先通過發布向導發布到指定文件夾,接著配置 IIS,需要確保當前計算機已經安裝了 IIS 以及 IIS 管理控制臺,完成配置之后訪問網站,將會打開 Swagger 文檔頁面,說明網站已經正常運行
目前,應用程序進能夠通過 HTTP 方式訪問,要使它在 IIS 中支持 HTTPS,還需要進行一些配置,包含證書設置、HTTPS 綁定和 HTTPS 重定向
當使用 HTTP 協議訪問時,IIS 并不會進行 HTTPS 重定向,為了支持這一功能,需要安裝“URL 重寫”工具
10.2 部署到 Docker
Docker 是一個開源項目,目標是提供輕量級的操作系統虛擬化解決方案
由于容器使用沙箱機制,多個容器實例之間互不影響,因而可以將應用程序同時部署到多個容器中并同時運行
鏡像與容器是 Docker 中兩個非常重要的概念,簡單來說,鏡像是用于創建容器的模板,Docker 容器則是通過鏡像創建的應用程序實例
Docker 支持多個平臺,包含 Windows、Linux 和 macOS 系統,Windows 10 可以通過下載“Docker for Windows”使用
在 Windows 操作系統中安裝并使用 Docker,應首先啟用 Hyper-V 功能,Hyper-V 能夠使 Linux 容器運行在 Windows 系統上,這是 Docker 安裝與運行所必需的
對于 Windwos 系統,Docker 會安裝 Linux 虛擬機,以便在 Windows 操作系統中能夠運行并創建基于 Linux 的容器
Dokcer 提供了一系列用于操作鏡像和容器的命令
操作 Docker 鏡像的命令:
docker build 創建
docker images 列出鏡像
docker pull 下載鏡像
docker push 發布鏡像
docker tag 指定標簽
docker rmi 刪除鏡像
操作 Docker 容器的命令:
docker create 創建容器
docker start 啟動容器
docker run 創建并啟動
docker stop 停止
docker rm 刪除
docker ps 列出正在運行的容器
docker logs 查看日志
docker exec 在運行的容器中執行命令或啟動交互式會話
docker create 命令和 docker run 命令支持的參數
--name 指定容器名稱
-p,--publish 將主機的端口映射到容器的端口
--rm 當容器停止運行后,使 Docker 自動刪除該容器
-v,--volume 為容器中的指定目錄提供數據卷
-e,-env 為容器提供環境變量
-i 以交互模式運行容器,通常與-t同時使用
Docker Compose 簡介
當應用程序依賴多個服務時,如數據庫和緩存等,要將其部署到容器中,也可以使用 Docker 命令以及 Docker 網絡實現,但是會比較煩瑣且極容易出錯
為此,Docker 提供了 Docker Compose,也稱為 Docker 容器編排,它是一個用來描述復雜的應用程序的工具,這些復雜應用通常需要創建多個容器,并使用 Docker 數據卷與 Docker 網絡等;此外,它還可以編排并管理多個容器,能夠簡化部署復雜應用程序到容器的操作,且不易出錯
相關文章
《ASP.NET Core 與 RESTful API 開發實戰》-- (第9章)-- 讀書筆記(下)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第9章)-- 讀書筆記(上)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第8章)-- 讀書筆記(尾)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第8章)-- 讀書筆記(下)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第8章)-- 讀書筆記(中)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第8章)-- 讀書筆記(上)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第7章)-- 讀書筆記(下)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第7章)-- 讀書筆記(中)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第7章)-- 讀書筆記(上)
《ASP.NET Core 與 RESTful API 開發實戰》-- (第6章)-- 讀書筆記(下)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第6章)-- 讀書筆記(上)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第5章)-- 讀書筆記(下)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第5章)-- 讀書筆記(中)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第5章)-- 讀書筆記(上)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第4章)-- 讀書筆記(下)
《ASP.ENT Core 與 RESTful API 開發實戰》-- (第4章)-- 讀書筆記(上)
《ASP.ENT Core 與 RESTful API 開發實戰》(第3章)-- 讀書筆記(下)
《ASP.ENT Core 與 RESTful API 開發實戰》(第3章)-- 讀書筆記(中)
《ASP.ENT Core 與 RESTful API 開發實戰》(第3章)-- 讀書筆記(上)
《ASP.ENT Core 與 RESTful API 開發實戰》-- 讀書筆記(第2章)
《ASP.ENT Core 與 RESTful API 開發實戰》-- 讀書筆記(第1章)
總結
以上是生活随笔為你收集整理的《ASP.NET Core 与 RESTful API 开发实战》-- (第10章)-- 读书笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构与算法专题——第九题 外排序
- 下一篇: 翠香猕猴桃 和 薄皮核桃,快来下单