我们的项目是基于 Git 托管,每次部署项目的时候都是登录服务器手动拉取,感觉很繁琐。
Laravel 给我们提供了一个自动部署的工具,是一个官方扩展。接下来就尝试使用下
首先我们服务器得免密登录。需要 ssh 直接登录
ssh-keygen -t rsa -C "your_email@example.com"
ssh-copy-id ubuntu@yourIP
ssh ubuntu@yourIP
安装
composer global require laravel/envoy
单个服务器
在 Laravel 项目根目录 创建 Envoy.blade.php
@servers(['web' => 'ubuntu@yourIP'])
@task('deploy', ['on' => 'web'])
cd /var/www/
sudo git pull origin master
sudo composer install
sudo php artisan migrate
sudo npm install
sudo npm run dev
@endtask
多个服务器
@servers(['web' => 'ubuntu@yourIP','web2' => 'ubuntu@yourIP'])
@task('deploy', ['on' => ['web', 'web2'], 'parallel' => true])
cd /var/www/
sudo git pull origin master
sudo composer install
sudo php artisan migrate
sudo npm install
sudo npm run dev
@endtask
使用
envoy run deploy
关于极客返利
极客返利 是由我个人开发的一款网课返利、返现平台。包含 极客时间返现、拉勾教育返现、掘金小册返现、GitChat返现。目前仅包含这几个平台。后续如果有需要可以考虑其他平台。 简而言之就是:你买课,我返现。让你花更少的钱,就可以买到课程。
版权许可
本作品采用 知识共享署名 4.0 国际许可协议 进行许可。转载无需与我联系,但须注明出处,注明文章来源 使用 Envoy 部署 Laravel 项目