简介
npm 包 dploybot 可以自动化部署静态网站。它会将本地的代码推送到Github等代码托管平台上,然后通过CDN服务自动部署到云端。
安装
你需要在本地已安装 Node.js 环境,然后在终端中输入以下命令安装 dploybot:
npm install dploybot
配置
Github Token
在部署之前,你需要在 Github 上创建一个专门用于部署的 Token,具体步骤如下:
- 进入 Github 个人设置页面,选择 Developer settings。
- 选择 Personal access tokens,然后点击 Generate new token。
- 创建一个只有 repo 权限的 Token,并复制生成的 Token 的值。
dploybot 配置文件
在项目根目录下创建一个 dploy.json
文件,并按照以下格式填充以下内容:
-- -------------------- ---- ------- - --------------- - - ------- ----------------------- --------- -------------- ------- ------ - -- -------------- - - ------- ----------------------- ----------- ---------------- -------------- --------------------- ------------------ ------------------------- --------- -------------- --------- ------------------- ------- ------------ ----------- ---------------- ----------------- ---------------------- - -- --------- - --------- ------------------- - -
上面的配置文件中,你需要填入以下内容:
repositories
:一个数组,每一项表示一个代码仓库的部署信息。可以多个,每个信息有以下字段:name
:代码仓库的名称,需要和 Github 上一致。branch
:部署的代码分支。path
:代码打包后的“目标”目录,dploybot 将会把这个目录的内容上传到云端。
deployments
:一个数组,每一项表示一个云服务的部署信息。可以多个,每个信息有以下字段:name
:部署的命名,你可以自定义。provider
:云服务的名称,目前支持 Amazon S3 和 CloudFront。accessKeyId
:访问云服务的权限 ID,需要从云服务获得。secretAccessKey
:访问云服务的权限 secret,需要从云服务获得。region
:云服务的存储区域,需要从云服务获得。bucket
:云服务存储的 Bucket 名称,需要从云服务获得。path
:你想要部署到 Bucket 的目录,可以自定义。endpoint
:云服务的访问域名,需要从云服务获得。distributionId
:只有使用 CloudFront 的用户需要填写,需要从云服务获得。
tokens
:一个对象,包含了需要的 Token。目前只需要 Github Token。
部署
当你完成上述的配置后,你就可以通过以下命令开始部署:
npx dploybot
当你输入这个命令之后,dploybot 就会开始执行部署流程:首先将本地代码推送到 Github 上,然后把该代码仓库的内容打包,最后将这个打包后的“目标”目录上传到云端。
常见问题
镜像源问题
由于某些原因,有时候从 npm 官方获取安装包可能会比较慢,这时候可以切换 npm 镜像源:
npm config set registry https://registry.npm.taobao.org
上传文件在云服务上的权限问题
如果你的部署过程遇到了这种问题,多数是因为你没有为上传的文件开启访问权限或访问权限没有正确配置。这个问题在使用 Amazon S3 和 CloudFront 时非常常见。可以根据云服务的官方文档进行相对应的设置。
结语
通过本文,你可以了解到使用 dploybot 可以轻松实现自动化部署静态网站。这个小工具不仅使用简单,而且可以自定义,非常方便。你可以在实际项目中尝试使用,提升自己的开发效率。
更多详细信息请参照官网 dploybot,你可以从官网了解到更多的使用方法和实例源码。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671d030d0927023822948