当前位置: 首页 > 后端技术 > PHP

简单轻松部署你的项目——Deployer

时间:2023-03-30 03:48:43 PHP

本文主要介绍Deployer——一款具有模块化、代码回滚、并行任务等功能的PHP部署工具。Deployer使用非常简单易用,可以快速上手,支持多种PHP框架。安装Deployer有多种安装方式:第一种是通过Phararchive,运行命令即可:curl-LOhttps://deployer.org/deployer.pharmvdeployer.phar/usr/local/bin/depchmod+x/usr/local/bin/dep第二种通过composer安装:composerrequiredeployer/deployer--dev使用:phpvendor/bin/dep第三种通过Github源码安装:clone最新代码:gitclonehttps://github.com/deployphp/deployer.git在源码目录下运行:php./build第三种方法会构建deployer.phar的Phar压缩包,所以推荐使用第一种方法安装。安装完成后,你可以通过dep使用Deployer,在你的项目目录下运行如下命令:depinit运行这条命令后,会出现下图的选项,你可以选择你需要的。当然,本教程使用的是Laravel,所以选择【1】Laravel。初始化后会自动生成deployer.php文件。deployer.php文件包含基本的部署配置和任务,并有清晰的注释。您可以根据评论在适当的地方添加配置和任务。没错,按照deployer.php文件中的注释,设置好repository和serverconfig,基本就可以正常运行了。如何快速上手?可以看看官方的介绍文档https://deployer.org/docs/get...,这里就不一一列举了。当你第一次部署成功时,Deployer会自动在服务器上为你生成文件:releases包含你部署项目的版本(默认保留5个版本)shared包含你部署项目的共享文件或目录(如:LaravelStoragedirectory,.envfile,etc.)当前软链接到当前发布版本需要注意的地方:Deployer默认使用ACL设置权限,可以设置writable_mode来改变这个行为。这里自动部署好了,恭喜你可以愉快的使用Deployer了。但是还有一个问题。每次提交推送代码时,都必须运行depdeploy进行部署。嫌麻烦的话,说说自动部署吧。我相信你想自动化一切。需要做的:生成git用户公钥和部署公钥->将用户公钥设置为与您的帐户关联的SSH密钥->将部署公钥设置为您项目的部署密钥->准备挂钩文件->在项目上添加Webhook并设置hook的URL当然,如果要在服务器上自动部署,还需要在服务器上安装deployer,并设置好部署配置,才能保证能够正常运行。推送代码后触发webhook,将请求发送到服务器的hook。如果验证成功,则执行depdeploy命令。自动部署的文章很多,也很简单。基本上就是在Git代码仓库中设置一个webhook,然后在服务器上进行配置。我就不一一列举了,因为做重复的事情是没有意义的。Webhook设置自动部署教程:Laravist-CodingWebhook自动部署Git项目使用WebHook实现PHP自动部署Git代码使用PHP脚本远程部署git项目如果想使用图形界面的部署工具,可以使用:Jenkins,walle-威利部署等等。本文主要介绍Deployer以及如何使用Deployer进行自动部署,没有做太详细的教程,因为Deployer的文档已经写的很清楚很容易了,设置Webhooks的教程也有很多,就不一一列举了(因为我很懒)。最后感谢overtrue——Overtrue,更多请关注PJBlog