前言
在进行网站开发的过程中,我们常常需要将代码部署到服务器上,但部署过程却常常被我们忽略。为了简化部署流程,我们可以使用 Docker 来部署网站,而使用 Docker Hub 管理镜像更是比较方便的选择。但我们还需要在每次代码更新时手动拉取 Docker 镜像、重新构建 Docker 容器并重启当前容器并不是一件高效的事情。因此,我们需要一个自动化部署工具。
其中,micro-dockerhub-hook 是一个在 Docker Hub 自动部署 Docker 容器的工具包,可帮助我们自动构建、推送以及部署代码。
本文将从如何安装、配置、以及应用 micro-dockerhub-hook 这个 npm 包等方面,给大家详细介绍 micro-dockerhub-hook 的应用。
安装
首先,我们需要在当前项目中安装 micro-dockerhub-hook,打开控制台(terminal)并输入以下命令:
--- ------- -------------------- ------
配置
Step 1:填写 Docker Hub token
首先,我们需要在 Docker Hub 中创建一个 Token,以便在 Docker Hub API 上操作镜像。
在创建 Token 前,我们需要在 Docker Hub 上创建一个命名为 webhook 的 Repository,并在其中新建一个名为 latest 的 tag。此处提醒大家,一定要选中自动构建,否则 Docker Hub 将不会生成镜像。
创建结束后,我们进入该 Repository,点击左侧的“构建设置”,在“绑定 Repository的构建来源”中添加对应的 Git Repository。等待自动构建完成后,我们便可以在“镜像标签(Tags)”中看到生成的 latest 镜像。
在创建 Token 前,请确保您已经将 Docker Hub 的账号与要部署的 Repository 绑定。
点击右上角个人头像,进入“安全性”页面,选择“Access Tokens”,在页面中输入密码,点击“Create Access Token” 创建 Token。
Step 2:填写配置文件
我们可以按照以下格式定义配置文件(config.js):
-------------- - - --------- - --------- ------- ----- ------------ ----- ----- -------- ------- -- ------ ------- --- ------- ----------- ------- --- ------- ----- ------- - - ----- ------------------ ----- -------------------------------- - - -
其中,
protocol
:Docker API 协议(默认为“http”)。host
:你正在使用的 Docker 容器主机名(默认为“localhost”)。port
:Docker API 端口(默认为“2376”)。version
:正在使用的 Docker API 版本(默认为“v1.21”)。token
:你在 Docker Hub 上创建的 Token。webhookUrl
:你在 Docker Hub 上创建的 Webhook 地址。images
:包含要部署的所有 Docker 镜像某些特定的信息。
将具有以上配置选项的配置文件,保存为 config.js。
Step 3:使用 micro-dockerhub-hook
安装和配置 micro-dockerhub-hook 完成之后,我们就可以愉快地部署本地代码了。
在控制台输入以下命令:
--- ------ - -------------------------------- --- ------ - -------------------- ---------------
你也可以将部署命令分别分成几条语句,像这样:
--- ------ - -------------------------------- --- ------ - -------------------- --- --------- - ------------------------------------ ------------------- --- ---------- - --------------------------------------- --------------- --- ----------- - ----------------------------------- --------------- --- -------------- - --------------------------------------- -------------------------------- -------------
示例代码
在运行代码前,先安装 config.js 依赖:
--- ------- ---- ------- ------- ----------- ------
然后,我们将具体示例代码存放于 src 文件夹中,具体代码如下:
config.js
--- ---- - ---------------- -------------- - - --------- - --------- ------- ----- ------------ ----- ----- -------- ------- -- ------ ------- --- ------- ----------- ------- --- ------- ----- ------- - - ----- ------------------ ----- -------------------- ------------- - - -
build.js
--- ------ - -------------------------------- --- ------ - -------------------- --- --------- - ------------------------------------ ------------------- --- ---------- - --------------------------------------- --------------- -------------------
deploy.js
--- ------ - -------------------------------- --- ------ - -------------------- --- --------- - ------------------------------------ ------------------- --- ----------- - ----------------------------------- --------------- ---------------------
index.js
--- ------ - -------------------------------- --- ------ - -------------------- --- --------- - ------------------------------------ ------------------- --- ---------- - --------------------------------------- --------------- --- ----------- - ----------------------------------- --------------- --- -------------- - -------------------------------------- ----------- ------------- -----------------------
此外,你也可以将 deploy 修改为 Web Server,将 deploy 同时部署到多台服务器上。
结语
至此,我们已经为大家详细介绍了如何安装、配置以及使用 npm 包 micro-dockerhub-hook 进行自动化部署的方式与流程,并且附带示例代码。希望大家能在实际工作中很好地应用 micro-dockerhub-hook。
众所周知,自动化部署对于开发者而言既效率又方便,若能掌握自动化部署工具的使用,将免去不少繁琐的工作,从而提高效率。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600671d430d0927023822a6c