npm 包 mimosa-s3-deployer 使用教程

阅读时长 5 分钟读完

介绍

本文将介绍如何使用 npm 包 mimosa-s3-deployer 来将前端应用部署至 AWS S3 上。mimosa-s3-deployer 是 Mimosa 框架的一个插件,它通过 AWS SDK 实现了将前端静态资源上传至 S3,并支持对上传的资源进行缓存和版本控制。

在学习本文之前,您需要:

  • 熟悉 Mimosa 框架及其配置文件
  • 拥有一份 AWS S3 的基本使用经验

提示:若您还不熟悉 Mimosa 或 AWS S3,可以先参考官方文档和相关教程。

安装

mimosa-s3-deployer 可以通过 npm 安装,使用以下命令安装最新版本:

配置

在 Mimosa 应用的配置文件中,需要添加以下配置项来启用 mimosa-s3-deployer 插件:

-- -------------------- ---- -------
-------------- - -
  -- ---
  -------- -
    -- ---
    -------------
  --
  --------- -
    --- -
      ------------ ----- ------ --- -----
      ---------------- ----- ------ ------ ------
      ------- ---- ------ -------
      ------- ---- ------ --------
    -
  -
--
  • accessKeyIdsecretAccessKey 是您 AWS 账号的 Access Key 和 Secret Access Key,用于连接 AWS SDK。
  • bucket 是您在 S3 上创建的应用存储桶的名称,用于上传文件和配置应用访问权限。
  • region 是您在 S3 上创建的存储桶所在区域的名称。推荐使用 us-east-1 作为默认配置。

如果您的 AWS 账号已经拥有对 S3 的访问权限,则可以直接使用以上配置项。

使用

在配置好 s3-deployer 插件后,使用以下命令部署您的前端应用至 S3:

其中 -D 参数将会向 S3 存储桶上传包含所有前端静态资源的 zip 文件,并将其压缩并缓存在 S3 上。

参数

mimosa-s3-deployer 还支持其他配置参数:

-- -------------------- ---- -------
-------- -
  --- -
    -- ---
    ------------- --------------- ------ --------
    ------- ------ -- ------ -- ------ -------- -- ---- ------
    ----- -----
    ------- --------- ------ --------
    ------------------ ------ ------ --- ------ -----------
    ----- -
      ----- -- --- ------- ----- -- --- -------
    --
    -------- -
      -------- -----
      ------------ ----
    -
  -
-
  • cacheControl 表示上传资源存储期间 HTTP 响应头 Cache-Control 的值,用于客户端缓存管理。授权期间,HTTP 缓存可以减少与服务器的交互次数,从而提高性能。
  • folder 表示上传的文件夹路径,相对于 S3 存储桶的根路径。如果设置为 "my/app",部署工具将在存储桶中新建 "my/app" 文件夹,然后将静态资源放入其中。
  • gzip 表示是否对上传的静态资源开启 gzip 压缩。默认为 true
  • maxAge 表示上传资源的存储期,存储期结束后 S3 将会清理过期的资源。该参数会设置 HTTP 响应头 Cache-Control 文件的过期时间。 如果您不需要缓存,则可以将其设置为 0
  • objectKeyTemplate 表示上传资源在 S3 上存储的路径模板,其中 {{version}}{{fileName}} 分别代表版本号和文件名。
  • tags 表示上传资源时为每个对象(文件)自动添加的标记键值对。
  • vBucket.enabled 表示是否开启上传资源的版本控制。默认为 true
  • vBucket.withWebRoot 表示是否在上传资源的基础路径上附加版本号。开启后,版本控制将不仅仅是在 S3 上创建一个版本化的存储桶,而且还将创建一个包含应用的版本基础路径。

示例

deploer.S3 中定义以下参数,配置上传至 S3:

-- -------------------- ---- -------
-------- -
  --- -
    ------------ ----- ------ --- -----
    ---------------- ----- ------ ------ ------
    ------- ---- ------ -------
    ------- ---- ------ ---------
    ------------- ----------------
    ------- ---------
    ----- -
      -------- -------
    --
    -------- -
      -------- -----
      ------------ ----
    -
  -
-

执行以下命令,部署前端应用至 S3:

上传完成后,您将会得到:

  • 存储桶中包含了压缩过的前端静态资源,以及 index.htmlpackage.jsonmimosa-config.js 等部署工具所需文件,它们位于 my/app/1/ 目录下,其中 "1" 是部署工具自动生成的版本号。
  • 上传完成后,存储桶中的标记 myTag 已被自动应用。

总结

本文介绍了如何使用 npm 包 mimosa-s3-deployer 将前端应用部署至 AWS S3 上。通过定义合适的配置参数,您可以自由控制上传资源的路径、版本、缓存和标记等属性。相信本文可以让您快速掌握 Mimosa 部署插件的使用方法,同时也对前端应用部署和 S3 存储技术有了更深入的了解。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066f471d8e776d08041046

纠错
反馈