web上线部署系统工具 Walle

Walle 一个web部署系统工具,配置简单、功能完善、界面流畅、开箱即用!支持git、svn版本管理,支持各种web代码发布,PHP,Python,JAVA等代码的发布、回滚,可以通过web来一键完成。

  • 用户分身份注册、登录

  • 开发者发起上线任务申请、部署

  • 管理者审核上线任务

  • 支持多项目部署

  • 支持多项目多任务并行

  • 快速回滚

  • 项目的用户权限管理

  • 部署前准备任务pre-deploy(前置检查)

  • 代码检出后处理任务post-deploy(如vendor)

  • 同步后更新软链前置任务pre-release

  • 发布完毕后收尾任务post-release(如重启)

  • 执行sql构建(不要担心忘记测试环境sql同步)

  • 线上文件指纹确认

  • 支持git、svn版本管理

依赖

  • Bash(git、ssh)

  • LNMP/LAMP(php5.4+)

  • Composer

安装

实验系统:CentOS 6.6_x86_64

实验前提:防火墙和selinux都关闭

实验说明:本实验共有1台主机,IP分配192.168.19.84

实验软件:walle-web-0.9.5httpd-2.2mysql-5.5php-5.4

一、基础准备

1.下载walle-web源码:

mkdir -pv /data/www

cd /data/www

wget https://codeload.github.com/meolu/walle-web/tar.gz/v0.9.5

tar xf v0.9.5

mv walle-web-0.9.5 walle-web

cd


2.安装LAMP环境:

yum -y install httpd php php-mysql php-mbstring mysql-server

service httpd start

service mysqld start


3.加入php页面支持:

vim /etc/httpd/conf/httpd.conf

--------------------------------------------->

DirectoryIndex index.php index.html index.html.var     //增加index.php


4.mysql创建数据库并修改root密码:

mysql

--------------------------------------------->

CREATE DATABASE walle;

UPDATE mysql.user SET Password=PASSWORD(123456) WHERE User='root';

FLUSH PRIVILEGES;

quit


二、安装walle-web

 

1.修改配置文件,连接数据库:

vim /data/www/walle-web/config/local.php

--------------------------------------------->

'db' => [

            'dsn'       => 'mysql:host=127.0.0.1;dbname=walle',     //数据库地址与库名称

            'username'  => 'root',                                  //连接数据库用户

            'password'  => '123456',                                //用户密码

        ],

 

2.安装composer:

curl -sS https://getcomposer.org/installer | php

mv composer.phar /usr/local/bin/composer


3.安装vendor:

可从 http://pan.baidu.com/s/1c0wiuyc 下载,下载完成后解压到项目根目录。

tar xf vendor.tgz

mv vendor /data/www/walle-web/


 4.初始化项目:

cd /data/www/walle-web/

./yii run/setup             //需要回答yes

 

三、最后的配置

 

1.配置httpd的虚拟主机:

 

 

vim /etc/httpd/conf/httpd.conf

---------------------------------------------->

#DocumentRoot "/var/www/html"                 //注释掉此行

<VirtualHost *:80>                            //在最后添加此段配置

    ServerName walle.jason.com

    DocumentRoot /data/www/walle-web/web

      <Directory "/data/www/walle-web/web">

        Options  FollowSymLinks

        AllowOverride ALL

        Order allow,deny

        Allow from all

      </Directory>

</VirtualHost>

---------------------------------------------->

service httpd restart

 

2.使用浏览器访问http://192.168.19.84测试,用户名和密码均为admin:

web上线部署系统工具 Walle_第1张图片



快速开始

  • 注册一个管理员身份用户(已有admin/admin),配置一个项目。

    • git配置范例

    • svn配置范例

  • 开发者注册用户(已有demo/demo),提交上线单

  • 管理员审核上线单

  • 开发者发起上线


高级自定义

此时你可能考虑要作为一个公司内部新项目的试用版本,那么你将需要做以下的处理,更适合业务需求。

  • 配置允许注册的邮箱后缀


  • 配置企业邮箱smtp


  • 配置日志路径

    web上线部署系统工具 Walle_第2张图片

  • 指定语言

    web上线部署系统工具 Walle_第3张图片

To Do List

  • Travis CI 集成

  • 邮件提醒:可配置提醒事件

  • 灰度发布:指定机器发布

  • 引入websocket

  • 静态资源管理器

  • 自定义公司logo

  • 自定义变量

  • 支持国际化:增加英文语言

  • 支持Docker

  • 开放接口


持续更新开启更多功能

./yii walle/upgrade


截图

配置管理

web上线部署系统工具 Walle_第4张图片提交上线任务

web上线部署系统工具 Walle_第5张图片


上线列表

web上线部署系统工具 Walle_第6张图片


宿主机、目标机群、操作用户关系


上线流程图

web上线部署系统工具 Walle_第7张图片

演示

web上线部署系统工具 Walle_第8张图片


交流讨论





你可能感兴趣的:(walle)