前言

Walle 一个web部署系统工具,可能也是个持续发布工具,配置简单、功能完善、界面流畅、开箱即用!支持git、svn版本管理,支持各种web代码发布,静态的HTML,动态PHP,需要编译的JAVA等。

目前,超过十家企业生产环境部署使用,欢迎star、fork、试用 :)

  • 用户分身份注册、登录

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

  • 管理者审核上线任务

  • 支持多项目部署

  • 支持多项目多任务并行

  • 快速回滚

  • 项目的用户权限管理

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

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

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

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

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

  • 线上文件指纹确认

  • 支持git、svn版本管理

依赖

  • Bash(git、ssh)

  • LNMP/LAMP(php5.4+)

  • Composer

官方地址

项目地址: https://github.com/meolu/walle-web

项目文档: https://www.walle-web.io/docs/

Walle

简体中文                    简体中文                    English               

walle 瓦力

 改进本文

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

官网主页 | Github主页

功能列表

  • 用户分身份注册、登录
  • 开发者发起上线任务申请、部署
  • 管理者审核上线任务
  • 支持多项目部署
  • 支持多项目多任务并行
  • 快速回滚
  • 项目的用户权限管理
  • 部署前准备任务pre-deploy(前置检查)
  • 代码检出后处理任务post-deploy(如vendor)
  • 同步后更新软链前置任务pre-release
  • 发布完毕后收尾任务post-release(如重启)
  • 执行sql构建(不要担心忘记测试环境sql同步)
  • 线上文件指纹确认
  • 支持git、svn版本管理

目前,接近上百家企业生产环境部署使用,欢迎star、fork、试用
:)

加入我们

你有以下两种方式加入到我们中来,为广大开发者提供更优质的免费开源的服务:

  • 贡献代码:我们的代码都在 meolu/walle-web ,你可以提交 PR
    到任何一个项目,当然,前提是代码质量必须是 OK 的。
  • 翻译或补充文档:我们的文档在:meolu/docs,你可以选择补充文档或者参与英文文档的翻译,你可以提交对应的 PR
    参与翻译工作。

Walle网站上线部署系统工具

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

1.安装lnmp环境
[root@t9-walle
~]# nginx -v

1
nginx version: nginx/1.6.0

[root@t9-walle ~]# php -v

1
PHP 5.5.37 (cli) (built: Jul 14 2016 11:17:40)

[root@t9-walle ~]# mysql -V

1
mysql  Ver 14.14 Distrib 5.5.37, for Linux (x86_64) using readline 5.1

2.下载

1
2
3
4
wget https://codeload.github.com/meolu/walle-web/tar.gz/v1.2.0 -O /data/down/wall-web-1.2.0.tar.gz
cd /data/down/
tar zxvf wall-web-1.2.0.tar.gz
mv walle-web-1.2.0 /data/web/walle-web

3.创建数据库
[root@t9-walle
~]# mysql -uroot -p123456

1
mysql> create database walle;

4.修改数据库连接配置文件
[root@t9-walle
~]# vim /data/web/walle-web/config/local.php

1
2
3
4
5
'db' => [
            'dsn'       => isset($_ENV['WALLE_DB_DSN'])  ? $_ENV['WALLE_DB_DSN']  : 'mysql:host=127.0.0.1;dbname=walle',
            'username'  => isset($_ENV['WALLE_DB_USER']) ? $_ENV['WALLE_DB_USER'] : 'root',
            'password'  => isset($_ENV['WALLE_DB_PASS']) ? $_ENV['WALLE_DB_PASS'] : '123456',
        ],

5.安装composer

1
2
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

6.安装vendor

1
2
cd /data/web/walle-web/
composer install --prefer-dist --no-dev --optimize-autoloader -vvvv

7.初始化项目

1
2
cd /data/web/walle-web/
./yii walle/setup #选择yes

8.配置nginx
cat
/usr/local/nginx/conf/vhost/walle.t9.cn.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
server
    {
        listen 80;
        server_name walle.t9.cn ;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /data/web/walle-web/web;
 
          location / {
                try_files $uri $uri/ /index.php$is_args$args;
            }
 
        location ~ [^/]\.php(/|$)
            {
                # comment try_files $uri =404; to enable pathinfo
                try_files $uri =404;
                fastcgi_pass  unix:/tmp/php-cgi.sock;
                fastcgi_index index.php;
                include fastcgi.conf;
                #include pathinfo.conf;
            }
        access_log  /data/logs/nginx/walle.t9.cn.log  access;
    }

9.访问

http://walle.t9.cn/

1
2
默认用户: admin
默认密码: admin

10.界面截图

参考官网:https://walle-web.io/docs/installation.html

==================================

Walle,一个开源的web代码发布管理系统的更多相关文章

  1. Walle代码发布系统

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

  2. Walle代码发布

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

  3. walle代码发布系统配置

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

  4. OS.js – 开源的 Web OS 系统,赶快来体验

    OS.js 是一个开源的 Web OS 系统,可以在浏览器中运行,提供了窗口管理器,应用程序API,用户界面开发套件和抽象的文件系统等.可以部署在 Node 或者 PHP 环境中运行.OS.js is ...

  5. Spring Boot 2.x 综合示例-整合thymeleaf、mybatis、shiro、logging、cache开发一个文章发布管理系统

    一.概述 经过HelloWorld示例(Spring Boot 2.x 快速入门(上)HelloWorld示例)( Spring Boot 2.x 快速入门(下)HelloWorld示例详解)两篇的学 ...

  6. 教你一步步发布一个开源库到 JCenter

    今天想来分享下,如何一步步自己发布一个开源库到 JCenter 这方面的博客网上已经特别多了,所以本篇并不打算仅仅只是记录流程步骤而已,而是尽可能讲清楚,为什么需要有这个步骤,让大伙知其然的同时还知其 ...

  7. SmartIDE v1.0.23 一个非常不敏捷的发布

    SmartIDE v1.0版本(CLI Build v1.0.23.4650,Server Build v1.0.23.4646)已经发布,在超过4000 个 Builds 之后,我们终于发布了v1. ...

  8. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  9. Azure Web Site 之 利用Azure Web site 发布网站

    由于经常混迹于MSDN Azure论坛,少不了和一些外国朋友打交道.有的时候觉得还是有一些东西可以写出来与外国友人们分享下的, 所以就用一个开源项目建了一个英文blog项目. 在发布的时候,首选的就是 ...

随机推荐

  1. luogu 1550 [Usaco2008 Oct]打井 最小生成树+小技巧

    此题似乎显然最小生成树,小技巧需要注意: 在每个点出井水,需要花费,实际上可以把井水视作所有井下统一的一点,需要走路径到达此点,新图上再最小生成树 将点化作边处理 还有题目写的数据范围一般不可信,开大 ...

  2. excel数据 入库mysql 和 mysql数据 导入excel文件

    1.excel数据入库mysql 首先准备excel文件, 标红的地方需要留意,一个是字段名所在行,一个表名对应页: 然后私用mysql工具 navicat, 选择数据库,然后导入文件, 选中相应ex ...

  3. Matconvnet环境配置一些坑

    1.先安装VS再安装matlab否则安装失败 2.cuda7.5支持MATLABR2016a/b,支持VS2013但是不支持VS2015 3.cuda8.0支持MABTLABR2017a,对应编译需V ...

  4. rem和em学习笔记及CSS预处理(未完待续)

    以下为读http://www.w3cplus.com/css/when-to-use-em-vs-rem.html的感悟,收获满满! 1.当元素A的字体单位是n rem时,它将根据根元素(html)的 ...

  5. js公共弹出窗插件

    /*错误提示框*/ var wr = function() { var wrap = '<div class="wrapBox opacity"> </div&g ...

  6. Python简介(2017-07-16)

    2017-07-15,这是我学习python的第一天. 首先,python是一门当下很火热的开发语言,它的创始人是Guido Van Rossum.就目前情况而言,python语言的热度持续上升,已经 ...

  7. linux 文件搜索命令

  8. Fragment回退栈&commit()和commitAllowingStateLoss()

    Activity切换时是通过栈的形式,不断压栈出栈,在Fragment的时候,如果你不是手动开启回退栈,它是直接销毁再重建,但如果将Fragment任务添加到回退栈,情况就会不一样了,它就有了类似Ac ...

  9. 1259 整数划分 V2

    设dp[n]为整数n的分割函数,由五边形定理得到: dp[n] = dp[n-1] + dp[n-2] - dp[n-5] - dp[n-7]…… 我们将其分为两部分计算 第一部分为 :( dp[n- ...

  10. pythonのpygame初体验

    import pygame import sys from pygame.locals import * #初始化pygame pygame.init() size = width,height=60 ...