博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《ASP.NET Core 与 RESTful API 开发实战》-- (第10章)-- 读书笔记
阅读量:4034 次
发布时间:2019-05-24

本文共 1925 字,大约阅读时间需要 6 分钟。

第 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
(); });

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 网络等;此外,它还可以编排并管理多个容器,能够简化部署复杂应用程序到容器的操作,且不易出错

相关文章

转载地址:http://jgzdi.baihongyu.com/

你可能感兴趣的文章
Oracle 字符串批量替换
查看>>
Flink 使用 Scala 编程中注意的隐式转换
查看>>
Flink SQL 开发的代码结构
查看>>
Flink SQL 项目通用模板一
查看>>
Flink 连接 MySQL 错误:The server time zone value ‘Öйú±ê׼ʱ¼ä‘ is unrecognized or represents
查看>>
大数据集群巡检,最佳实践记录
查看>>
纯JS实现QQ右下角弹窗demo
查看>>
JS页面一键分享QQ空间、新浪微博、豆瓣等小工具
查看>>
jQuery实现的进度条效果
查看>>
jQuery常用小技巧
查看>>
【Spring官方指南学习】Spring构建一个 restful web service
查看>>
java中native的用法
查看>>
Java --- 堆(heap)栈(stack)和方法区(method)
查看>>
java char类型可以存储一个汉字
查看>>
Java实现克隆的三种方式
查看>>
Oracle中的BLOB和CLOB字段
查看>>
Servlet与CGI的区别
查看>>
Synchronized和Lock的用法和区别
查看>>
快速失败(fail—fast)和 安全失败(fail—safe)
查看>>
JDK提供的四种线程池
查看>>