这并不是一个真正的Laravel问题/问题,你必须在dev-ops论坛上问他们会怎么做来部署像你这样的PHP应用程序。
你的Laravel应用程序基本上是PHP应用程序,有些软件包是由Composer提供的,所以它更像是一个Composer应用程序而不是Laravel应用程序,但是你可能有一些Laravel需求,比如执行,或任何其他工匠命令来后期部署你的应用程序,或者不是,所以,它比Laravel更需要你的应用程序,对吧?php artisan migrate
我开发了一个软件包来执行我的部署,Deeployer。这个包的目的是,每次我将应用程序推送到生产(或过渡)分支时,Github都会触发一个钩子,告诉我的服务器做任何需要将我的应用程序部署到我自己的VPS的钩子。在基本部署中,它将:
1) 存储库git pull
2) 执行以更新我的供应商文件夹composer update
3)执行以下载我安装的任何js或cssbower update
4) 执行以升级我的数据库模式php artisan migrate
5)执行并修复这些命令在下载文件时可能对我的目录造成的任何权限混乱chmod
chown
看?这些是我的部署结构非常特有的东西,这就是为什么我真的不认为你会在部署应用程序上找到共识。当Anahkiasen第一次建造Rockiteer时,有人大喊:“如果我们已经有了Capistrano,你为什么要这样做?
昨天我碰到了这个:http://www.deployhq.com/packages,由Cartalyst和其他好人的Ben Corlet使用。
还有Rockiteer:http://rocketeer.autopergamene.eu/。
不要忘记Laravel本身有自己的SSH Remote组件(我在Deeployer上也使用它,Rocketeer也使用它),这可能有助于你做任何你需要的事情来部署你的应用程序。
因此,您最好考虑您的部署需求,并使用软件包,应用程序或仅Laravel找到自己的方式。