walle 安装体验记录

github

https://github.com/meolu/walle-web

walle 是一个代码部署工具,本来是最佳想用 python 写一个带 web 界面的代码部署工具。原因是前面用 shell 写的一个简单的部署有很多的问题。今天早上看到了这个,思路和我想要做的差不多,处理上线那块作者直接用 ssh。 由于我用的 saltstack在做管理,我是想用 saltstack 的接口来做部署.

  1. 依赖

bash 系统自带,迁出需要用到git,拷贝文件需要用到ssh

php环境 ,我这里是 LNMP

composer

1
2
curl -sS http://install.phpcomposer.com/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

  1. 设置数据库连接

两个文件 config/web.php config/local.php

1
2
3
4
5
6
7
8
9
vi config/web.php +12
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=127.0.0.1;dbname=walle', # 新建数据库walle
'username' => 'username', # 连接的用户名
'password' => 'password', # 连接的密码
'charset' => 'utf8',
],

1
2
3
4
5
6
7
vi config/local.php +17
'db' => [
'dsn' => 'mysql:host=127.0.0.1;dbname=walle',
'username' => 'root',
'password' => '123456',#此处需要设置连接mysql密码,默认为空
],

  1. 安装 vendor

这里用到了 composer

1
2
3
cd walle
composer install --prefer-dist --no-dev --optimize-autoloader -vvvv

我这里这里生成了一个 bower-asset 的文件夹,修改成bower.

  1. 初始化
1
2
3
cd walle
./yii walle/setup # 需要你的yes

  1. 配置 nginx

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 deploy.net; # 改你的host
root /usr/local/www/walle/web; # 根目录为web
index index.php;

# 注意!!测试通过之后一定取消下面注释,设置访问内网
# allow 192.168.0.0/24;
# deny all;

location / {
try_files $uri $uri/ /index.php$is_args$args;
}

location ~ \.php$ {
try_files $uri = 404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

  1. 访问

重启 php-fpm nginx

1
2
3
sudo service php5-fpm restart
sudo service nginx restart

访问配置好的路径

安装错误

1
2
Error: The file or directory to be published does not exist: /usr/local/www/walle/vendor/bower/jquery/dist

真实路径是 bower-asset,修改下

1
2
mv bower-asset  bower

  1. 配置

为 php 运行账户生成一个key,在访问 gitlab 和上线都需要。我的 php-fpmwww-data,如果www-data没有文件夹使用usermod或直接修改/etc/sudoer

1
2
$ ssh-keygen -t rsa

在 gitlab 的 admin/deploy keys 里添加进去

总体来说,安装还是非常简单的,文档也比较全。

作者

张巍

发布于

2016-03-01

更新于

2016-03-01

许可协议

评论