Centos7-walle2.0

版权声明:QQ:1009002494 https://blog.csdn.net/Doudou_Mylove/article/details/89316630

 

安装前了解

Linux + Bash(git、ssh)

意味着不支持win,也不要装在mac,兼容性问题

Python 3.5+ 和 Python 2.7+

MySQL 5.6.5以上,否则会在安装时报错

在MySQL 5.6.5版本之前,Automatic Initialization and Updating只适用于TIMESTAMP,而且一张表中,最多允许一个TIMESTAMP字段采用该特性。从MySQL 5.6.5开始,Automatic Initialization and Updating同时适用于TIMESTAMP和DATETIME,且不限制数量。

将所有目标主机 加入 宿主机(walle安装所在机器)ssh免密登录配置

walle 让用户代码发布终于可以不只能选择 jenkins!支持各种web代码发布,php、java、python、go等代码的发布、回滚可以通过web来一键完成。walle 一个可自由配置项目,更人性化,高颜值,支持git、多用户、多语言、多项目、多环境同时部署的开源上线部署系统。

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

以下是基于CentOS 7.6.1810安装

yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

#安装的系统自身的mariaDB(未验证)

#yum install -y mariadb-devel gcc gcc-c++ python-devel

依赖

yum install -y mysql-devel gcc gcc-c++ python-devel MySQL-python

安装myqsl

wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

yum -y localinstall mysql57-community-release-el7-11.noarch.rpm

yum -y install mysql-community-server

配置默认编码为UTF-8

vim /etc/my.cnf

character_set_server=utf8

init_connect='SET NAMES utf8'

设置开机自启

systemctl start mysqld

systemctl enable mysqld

systemctl daemon-reload

 

安装nginx和php

yum -y install nginx php

systemctl enable nginx

systemctl start nginx

 

在github配置keys,使用git来克隆(前提要有账号)

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

ssh-keygen

cat /root/.ssh/id_rsa.pub

 

yum install –y git/svn

mkdir -p /data/walle # 新建目录,也是你的虚拟walle的目录

cd /data/walle/

git clone [email protected]:meolu/walle-web.git         # walle2.0代码检出

整个项目都是通过admin.sh,来启动的,主要有下面两个(暂时不执行)。

#sh admin.sh start  #启动walle端口服务

#sh admin.sh migration #加载数据库,创建表与添加数据

 

walle安装

配置虚拟主机,添加虚拟启动目录

cd /etc/nginx/

cp nginx.conf nginx.conf.bak

 

#注意include在http字段下,server字段外

cd conf.d/

touch walle.conf

vim walle.conf

upstream webservers {
    server 10.24.45.13:5000 weight=1; #这个是walle项目的启动端口
 }
server {
    listen       80;
   server_name  server.walle.com; # walle域名设置,这个域名设置比较重要,需要在walle的配置一致
    access_log   /data/walle.log combined;
    index index.html index.htm index.php; # 日志目录
    location / {
        try_files $uri $uri/ /index.html;
        add_header access-control-allow-origin *;
       root /data/walle/walle-web/fe; # 前端代码已集成到walle-web,即walle-web/fe的绝对路径
    }
    location ^~ /api/ {
        add_header access-control-allow-origin *;
        proxy_pass      http://webservers;
        proxy_set_header X-Forwarded-Host $host:$server_port;
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header    Origin        $host:$server_port;
        proxy_set_header    Referer       $host:$server_port;
    }
    location ^~ /socket.io/ {
        add_header access-control-allow-origin *;
        proxy_pass      http://webservers;
        proxy_set_header X-Forwarded-Host $host:$server_port;
        proxy_set_header  X-Real-IP  $remote_addr;
        proxy_set_header    Origin        $host:$server_port;
        proxy_set_header    Referer       $host:$server_port;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        # WebScoket Support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

重启nginx

systemctl restart nginx

配置hosts指定

如果虚拟主机配置是应用IP与端口,这个就可以不配置,不过不建议,毕竟用域名管理比较好,毕竟一个主机有多台虚拟主机。

vim /etc/hosts

10.24.45.13     server.walle.com

配置walle配置参数

pwd

/data/wwwroot/walle-web

cp walle/config/settings_prod.py walle/config/settings_prod.py.bak

vim walle/config/settings_prod.py

 

安装Python2.7+pip

sh admin.sh init

#这一步很重要执行也比较慢,耐心等待

最后执行成功显示如下:

 

创建数据库,并添加表与数据

mysql   -uroot  -pRfd.com  -e'CREATE SCHEMA walle'

 

执行创建表的脚本命令

sh admin.sh migration

 

启动walle

#sh admin.sh start或者#sh admin.sh restart

 

 

登录(由于我们本地添加了hosts,windows也需要加,所以可以使用域名访问)

默认提供的账户登录

超管:[email protected] \ Walle123

所有者:[email protected] \ Walle123

负责人:[email protected] \ Walle123

开发者:[email protected] \ Walle123

访客:[email protected] \ Walle123

 

模拟代码上线

 

可编辑空间名称

新建用户—添加用户权限

新建环境

添加服务器

注意服务器的用户和端口

新建项目

提交之后成员管理处授予用户对项目的权限

部署项目的时候要注意:

下面的操作一定是在目标主机,也就是上面服务器推到目标集群的服务器上操作

目标集群部署路径一定要存在,且唯一

mkdir -p /data/www

chown -R root.rooot /data/www/

点击提交之后检测项目

 

模拟上线

下面这一步要注意

点击提交之后需要审核

上线完成,然后去看目标主机对应得目录就会有数据

到此模拟完成。

猜你喜欢

转载自blog.csdn.net/Doudou_Mylove/article/details/89316630