Enhancer 应用部署工具 edtool
本工具可以将发布过的项目从平台部署到目标机器, 方便开发者做持续集成。只需在目标机器上安装配置一次,后续部署一条指令即可完成。
0. 依赖的环境
下面的命令假定你已经按照教程在服务器上安装好了 node, redis 和 数据库
1. 安装 edtool
npm install edtool -g --registry=https://registry.npmmirror.com
2. 使用方式
2.0 使用前的说明
如果开发环境的数据库等配置和部署环境不一样, 可以通过下面的命令来设置部署环境的配置
数据库配置
edtool config 项目ID db host user password databaseName connectionName // 比如项目ID是123, 且部署环境的数据库的host要配置成 127.0.0.1, 数据库名是 test edtool config 123 db 127.0.0.1 / / test / // 不需要修改的 就用 / 代替 // 如果有多个数据库连接需要配置, 可以像下面这样配置另外一个连接 edtool config 123 db host1 user1 passsword1 databaseName1 connectionName1
系统配置
edtool config 项目ID system port externalUrlBase // 比如项目ID是123, 线上部署环境的端口是 5301 且 外部访问地址是 http://www.xx.com edtool config 123 system 5301 http://www.xx.com
redis配置
edtool config 项目ID redis host port user pass // 比如项目ID是123, 线上部署环境的redis端口是 6379 edtool config 123 redis / 6379 / /
2.1 登录(第一次使用时需要先使用无远账号登录)
edtool login
2.2 部署项目
下面的部署方式任选一种, 项目ID 和 发布编号 可以在 我的项目 的 详情信息 和 发布管理 里找到
部署项目ID为 123 且发布编号为最近一次发布的项目
edtool 123
部署项目ID为 123 且发布编号为 456的项目
edtool 123 456
从本地工作台部署项目ID为 123 的最近一次发布过的项目,其中参数 --repository 用来指定本地工作台所在的IP和端口地址
edtool 123 --repository=192.168.47.22:5300
部署已经下载好的 bodhi 包
// 将命令行终端切换到 bodhi 包所在目录 edtool ./bodhi-app-xxx.tar.gz
部署时指定文件夹名称
edtool 123 --name=文件夹名 // 如果不指定 --name 那么 每次发布后都会部署到不同 (app-bodhi-发布编号) 的文件夹下
2.3 安装服务(仅 windows 用户可用, linux 不需要)
下面的命令需要在项目根目录下执行
安装服务(安装后会默认启动项目)
edtool service install
卸载服务
edtool service uninstall
启动服务
edtool service start
停止服务
edtool service stop
其他说明
- 项目会被部署到当前命令运行的目录下。
用户目录/wuyuan/项目ID/
目录会被 edtool 用作部署对应项目的工作目录,一般情况不要自主修改。- 其他参数说明:
-b
表示备份 bodhi 包。备份地址为 用户目录/wuyuan/backup/项目ID/bodhi-app-xxx.tar.gz。-s
表示只下载 bodhi 包 不部署。-i
表示部署时不执行 npm install。-h
列出 edtool 支持的命令。