基于 deployer 的 Web 端自动部署

命令行端的deployer是无状态,对于每一个项目想要查看发布的记录是一件很难受的一件事,因此有了此项目
效果预览

项目列表

基于 deployer 的 Web 端自动部署

新建服务器

基于 deployer 的 Web 端自动部署

新建任务

基于 deployer 的 Web 端自动部署

新建项目

基于 deployer 的 Web 端自动部署

发布项目

基于 deployer 的 Web 端自动部署

ajax轮询展示项目部署状态

基于 deployer 的 Web 端自动部署

install

git clone https://github.com/jc91715/deployer project 

composer

cd project && composer install

配置数据库迁移

php artisan db:seed

队列监听

php artisan queue:listen &

访问 yourdomain.com 或者 yourdomain.com/build/admin/index.html

账户 admin@admin.com
密码 secret

前后端分离

后端

  • Laravel 5.5
    前端
  • vue 2.6.6

使用laravel-mix 前端打包后的代码在public/build/admin 路径下。两种方式访问前端代码

  • 1 yourdomain.com
  • 2 yourdomain.com/build/admin/index.html

    如何使用

    使用之前部署该web的服务器的id_rsa.pub放到要部署的服务器上

先熟悉使用 deployer
了解server和task的概念
项目之间是通过空间隔开的,同一空间下的项目可以共享task和server。假如要配置测试环境,测试环境就是配置的一些参数不一样,可以新建一个项目,在项目的env(laravel框架)配置不同就可以,其它框架可以自行实现测试环境的配置

1新建空间

2 新建服务器

配置格式

jc91715.top:
    host: 47.96.15.116
    user: root
    identity_file:
        public_key: ~/.ssh/id_rsa.pub
        private_key: ~/.ssh/id_rsa
    stage: master
    deploy_path: /var/www/sites/helloworld
jc91715.top:
    host: 47.96.15.116
    user: root
    identity_file:
        public_key: ~/.ssh/id_rsa.pub
        private_key: ~/.ssh/id_rsa
    stage: master
    deploy_path: /var/www/sites/helloworld

3 新建任务

任务格式

 <?php  
require 'recipe/laravel.php';
task('chown:user', function() {

    run('cd {{deploy_path}}/../ && chown  ubuntu:www-data {{deploy_path}} -R');
});after('deploy:unlock', 'chown:user');

4 新建项目

  • 填写仓库名字
  • 选择服务器
  • 选择任务
  • 填写配置文件

    5 发布

  • 填写分支名字
  • 填写分支hash
本作品采用《CC 协议》,转载必须注明作者和本文链接
Make everything simple instead of making difficulties as simple as possible
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!