项目管理
最后更新于
项目名称 随意设置,主要用于区别不同项目,不是真实的应用目录。
环境 如果是同一个发布系统支持发布不同环境的应用,该字段可以用于区分环境,如果不同应用环境使用不同发布系统来发布则作用不大。
空间 作用不大,可以当做中文项目名来设置
发布方式 支持scp(rsync)发布和pm2 deploy两种发布方式
配置文件 使用文本的配置方式,主要是由于最开始使用pm2发布,其配置文件是json或js,所以沿用了文本的配置方式。
user:用户名
host[]:主机地址
ref:分支
repo:仓库地址
path:项目部署路径,需要包含项目目录
preBuild:编译前置,在发布机上编译代码设置的环境变量,比如前端项目设置不同的环境变量使用不同的接口地址。
build:编译命令,例如:npm run build
preDeploy:发布前置,应用服务重启前设置环境变量等操作。
postDeploy:发布命令,例如:pm2 reload zhuque
rsyncArgs:rsync参数
常用rsync参数:
--exclude 排除不进行同步的文件,比如--exclude="*.iso"
--delete参数删除只存在于目标目录、不存在于源目标的文件,即保证目标目录是源目标的镜像。
如果想要排除指定的文件,即不删除某个文件,可以使用exclude指定,例如:--exclude '.env',会删除其他文件而不会删除.env文件。
选项名称
描述
类型
默认
key
SSH
密钥的路径
String
$HOME/.ssh
user
SSH
用户
String
host
SSH
主机
[String]
ssh_options
SSH
选项,不包括命令行标志,查看man ssh
String
,[String]
ref
GIT
的remote/branch
String
repo
GIT
的remote
String
path
服务器中的路径
String
pre-setup
1.远程机器拉代码之前
String
post-setup
2.远程服务器拉代码
String
pre-deploy-local
3.post-deploy前在宿主机上执行的命令
String
post-deploy
4.部署后执行
String