Deployer 的使用

Posted dongbo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Deployer 的使用相关的知识,希望对你有一定的参考价值。

假设我们的项目在本地 /www/demo-project 下,那么我们切换到该目录:

$ cd /www/demo-project

然后执行 Deployer 的初始化命令:

$ dep init

它会让你选择项目类型,比如 Laravel,symfony 等,如果你都不是,选择 common 类型即可。

这一步操作将会在当前目录生成一个 deploy.php 文件,这个文件就是部署清单,也就是告诉 Deployer 怎样去部署你的项目,关于这部分我们不需要过多的介绍,大家去参考 Deployer 官网的详细说明操作即可。

需要关心的几个配置是:

// 指定你的代码所在的服务器 SSH 地址,请不要使用 https 方式哦。
set(repository, [email protected]:overtrue/demo-project.git);

// 这里填写目标服务器的 IP 或者域名
host(your_server_ip) 
    ->user(deployer) // 这里填写 deployer 
      // 并指定公钥的位置
    ->identityFile(~/.ssh/deployerkey)
    // 指定项目部署到服务器上的哪个目录
    ->set(deploy_path, /var/www/demo-app); 

正确填写完配置清单以后,我们就可以部署我们的项目了,确认你的代码已经提交到代码仓库,因为执行部署的时候并不是将当前代码部署到服务器,而是从代码库拉最新的版本。

然后在当前目录执行:

$ dep deploy -vvv

就可以看到整个部署过程了,一般正常会是像下面这样子:

$ dep deploy -vvv
Deployers output
?? Deploying master on your_server_ip
? Executing task deploy:prepare
? Executing task deploy:lock
? Executing task deploy:release
? Executing task deploy:update_code
? Ok
? Executing task deploy:shared
? Executing task deploy:vendors
? Executing task deploy:writable
? Executing task artisan:storage:link
? Executing task artisan:view:clear
? Executing task artisan:cache:clear
? Executing task artisan:config:cache
? Executing task artisan:optimize
? Executing task deploy:symlink
? Executing task deploy:unlock
? Executing task cleanup
Successfully deployed!

如果失败的话就需要检查一下哪一步出错了,通常根据报错信息即可定位。

以上是关于Deployer 的使用的主要内容,如果未能解决你的问题,请参考以下文章

markdown [hexo-deployer-git](https://github.com/hexojs/hexo-deployer-git)使用说明文件

worklight ant task app-deployer - WL 控制台安全处于活动状态时出现未经授权的错误

「从零单排canal 04」 启动模块deployer源码解析

php 部署WordPress与Deployer 4

markdown Lambda Auto-Deployer

ruby rake_heroku_deployer.rb