码迷,mamicode.com
首页 > 其他好文 > 详细

Walle的详细部署、项目应用以及502bad gateway错误解决

时间:2018-06-05 17:04:50      阅读:443      评论:0      收藏:0      [点我收藏+]

标签:walle部署   walle项目搭建   502bad gateway   

                                                 Walle的详细部署与应用

Walle简介

Walle 一个web部署系统工具,具有 一键快速回滚的功能,它能清晰的记录 上线单申请、审核、部署和实时操作日志,能支持各种web代码发布回滚。

环境:(一台配置了LAMP/LNMPlinux机器,并且安装git/svn)上操作。

1.代码检出

1)如果你是没有在github上申请过账号,且没有配置ssh-kyes,。这个还是建议去申请账号

[root@node2 ~]# mkdir /data/down
[root@node2 ~]# wget https://codeload.github.com/meolu/walle-web/tar.gz/v1.2.0 -O  /data/down/wall-web-1.2.0.tar.gz


2)在github申请账号,配置keys,使用git来克隆

登陆github官网 https://github.com/ 注册账号

注册完毕后,添加ssh keys密钥,如下图所示

技术分享图片

找到ssh keys,然后添加密钥

技术分享图片

把本地已经配置lnmp/root/.ssh/id_rsa.pub的密钥添加到web key

[root@node2 ~]# cat /root/.ssh/id_rsa.pub

技术分享图片

密钥添加完后,我们就可以接下的安装了

#mkdir -p /data/www/walle-web && cd /data/www/walle-web  # 新建目录
#yum install –y git/svn
#git clone git@github.com:meolu/walle-web.git .          # 代码检出


配置了keys后成功克隆如下:

[root@node2]# git clone git@github.com:meolu/walle-web.git .
Cloning into '.'...
remote: Counting objects: 4511, done.
remote: Total 4511 (delta 0), reused 0 (delta 0), pack-reused 4511
Receiving objects: 100% (4511/4511), 13.90 MiB | 316.00 KiB/s, done.
Resolving deltas: 100% (2519/2519), done.


2.、配置mysql的连接

#vim  config/local.php +22

'db' => [

    'dsn'       => 'mysql:host=127.0.0.1;dbname=walle', # 新建数据库walle

    'username'  => 'username',                          # 连接的用户名

    'password'  => 'password',                          # 连接的密码

],

详细配置如下:

技术分享图片

3、创建数据库walle

[root@node2 walle-web]# mysql -uroot -p123456
MySQL [(none)]> create database walle;
Query OK, 1 row affected (0.04 sec)


4.安装composer,如果已安装跳过

#curl -sS https://getcomposer.org/installer | php
#mv composer.phar /usr/local/bin/composer                # PATH目录


5.安装vendor

#cd /data/www/walle-web
#composer install --prefer-dist --no-dev --optimize-autoloader -vvvv


安装速度慢或失败,可直接下载vendor解压到项目根目录

 

6.初始化项目

#cd /data/www/walle-web


./yii walle/setup # 
需要你的
yes


7、配置nginx

nginx简单配置

# vim /usr/local/nginx/conf/vhost/walle.conf

这个可以新建虚拟主机,或者是直接在nginx.conf配置

server {
    listen       8088;
    server_name  walle.compony.com; # 改你的host
    root /data/www/walle-web/web; # 根目录为web
    index index.php;
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }
    location ~ \.php$ {
        try_files $uri = 404;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}


 

8、如果你是的使用oneinstack实现一键安装的,必须要注意的是把fastcgi_pass   127.0.0.1:9000;参数改为fastcgi_pass unix:/dev/shm/php-cgi.sock;否则会出现502 Bateway的错误,其他的也是你可以查看nginx.conf文件的fastcgi_pass的选项与你的所新建的虚拟主机一致

技术分享图片

9、访问地址,登陆账号admin,密码:admin

技术分享图片

部署成功,进入walle

技术分享图片

10、项目的配置:

环境:宿主机-walle

      目标主机-代码要分发到的普通的主机

Web-walle配置如下,配置可参考官网配置(http://www.walle-web.io/docs/git-configuration.html):

技术分享图片

Walle主机:

#ps -ef |grep php  查看php-fpm的所属者,我的为www,下面需要配置ssh-keygren
#mkdir /data/www/deploy
# mkdir -p /home/www/.ssh 
# cp /root/.ssh/* /home/www/.ssh 
# chown -R www:www /home/www 
# chmod 600 /home/www/.ssh/*


目标主机:

如果没有www用户,需要新创建

#useradd www
#echo 'www' | passwd --stdin www


Walle主机:

www用户的免密认证

#ssh-copy-id www@目标主机的ip


我是按官网配置的项目-Yii2项目的代码参照如下:

cp -rf {WORKSPACE}/backend/web/index-test.php 
{WORKSPACE}/backend/web/index.php  
cp -rf /data/www/mobile/yii2_test/vendor {WORKSPACE}/
cp -rf  {WORKSPACE}/yii-test {WORKSPACE}/yii


检测项目发现有exec错误。

技术分享图片

解决办法:

进入php.ini文件,找到

disable_functions = passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,popen


把其中的exec去掉,然后重启php

重新检测

技术分享图片

检测成功,walle简单部署与应用就基本简单的实现。


Walle的详细部署、项目应用以及502bad gateway错误解决

标签:walle部署   walle项目搭建   502bad gateway   

原文地址:http://blog.51cto.com/xiaozhagn/2125125

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!