Liunx 騰訊開發(fā)框架Tars 使用一鍵安裝

1.下載CentOS

CentOS-7-x86_64-Minimal-1804.iso

http://ftp.sjtu.edu.cn/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso

2.獲取Tars

git clone --recursive?https://github.com/TarsCloud/Tars.git

3.軟件包

cmake-2.8.8.tar.gz

mysql-5.6.26.tar.gz

4.安裝依賴

yum install wget

yum install git

yum insall -y? gcc gcc-c++ make automake

rm -rf /etc/my.cnf

5.mysql安裝

```

#!/bin/bash

PWD_DIR=`pwd`

MachineIp=192.168.23.141

MachineName=localhost.localdomain

MysqlIncludePath=

MysqlLibPath=

##安裝glibc-devel

yum install -y glibc-devel

##安裝flex、bison

yum install -y flex bison

##安裝cmake

tar zxvf cmake-2.8.8.tar.gz

cd cmake-2.8.8

./bootstrap

make

make install

cd -

## 安裝mysql

yum install -y ncurses-devel

yum install -y zlib-devel

if [? ! -n "$MysqlIncludePath"? ]

? then

tar zxvf mysql-5.6.26.tar.gz

cd mysql-5.6.26

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.26 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_USER=mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

make

make install

ln -s /usr/local/mysql-5.6.26 /usr/local/mysql

cd -

? else

? ## 根據(jù)mysql 庫路徑 配置 設(shè)置framework/CMakeLists.txt tarscpp/CMakeList.txt

? sed -i "s@/usr/local/mysql/include@${MysqlIncludePath}@g" ../framework/CMakeLists.txt

? sed -i "s@/usr/local/mysql/lib@${MysqlLibPath}@g" ../framework/CMakeLists.txt

? sed -i "s@/usr/local/mysql/include@${MysqlIncludePath}@g" ../framework/tarscpp/CMakeLists.txt

? sed -i "s@/usr/local/mysql/lib@${MysqlLibPath}@g" ../framework/tarscpp/CMakeLists.txt

fi

yum install -y perl

cd /usr/local/mysql

useradd mysql

rm -rf /usr/local/mysql/data

mkdir -p /data/mysql-data

ln -s /data/mysql-data /usr/local/mysql/data

chown -R mysql:mysql /data/mysql-data /usr/local/mysql/data

cp support-files/mysql.server /etc/init.d/mysql

yum install -y perl-Module-Install.noarch

perl scripts/mysql_install_db --user=mysql

cd -

sed -i "s/192.168.2.131/${MachineIp}/g" `grep 192.168.2.131 -rl ./conf/*`

cp ./conf/my.cnf /usr/local/mysql/

##啟動mysql

service mysql start

chkconfig mysql on

##添加mysql的bin路徑

echo "PATH=\$PATH:/usr/local/mysql/bin" >> /etc/profile

echo "export PATH" >> /etc/profile

source /etc/profile

##修改mysql root密碼

cd /usr/local/mysql/

./bin/mysqladmin -u root password 'root@appinside'

./bin/mysqladmin -u root -h ${MachineName} password 'root@appinside'

cd -

##添加mysql的庫路徑

echo "/usr/local/mysql/lib/" >> /etc/ld.so.conf

ldconfig

##下載C++基礎(chǔ)服務(wù)框架

yum install -y git

cd ../

git submodule update --init --recursive framework

cd -

##安裝c++語言框架

cd ../framework/build/

chmod u+x build.sh

./build.sh all

./build.sh install

cd -

##Tars數(shù)據(jù)庫環(huán)境初始化

mysql -uroot -proot@appinside -e "grant all on *.* to 'tars'@'%' identified by 'tars2015' with grant option;"

mysql -uroot -proot@appinside -e "grant all on *.* to 'tars'@'localhost' identified by 'tars2015' with grant option;"

mysql -uroot -proot@appinside -e "grant all on *.* to 'tars'@'${MachineName}' identified by 'tars2015' with grant option;"

mysql -uroot -proot@appinside -e "flush privileges;"

cd ../framework/sql/

sed -i "s/192.168.2.131/${MachineIp}/g" `grep 192.168.2.131 -rl ./*`

sed -i "s/db.tars.com/${MachineIp}/g" `grep db.tars.com -rl ./*`

chmod u+x exec-sql.sh

./exec-sql.sh

cd -

##打包框架基礎(chǔ)服務(wù)

cd ../framework/build/

make framework-tar

make tarsstat-tar

make tarsnotify-tar

make tarsproperty-tar

make tarslog-tar

make tarsquerystat-tar

make tarsqueryproperty-tar

cd -

##安裝核心基礎(chǔ)服務(wù)

mkdir -p /usr/local/app/tars/

cd ../framework/build/

cp framework.tgz /usr/local/app/tars/

cd /usr/local/app/tars

tar xzfv framework.tgz

sed -i "s/192.168.2.131/${MachineIp}/g" `grep 192.168.2.131 -rl ./*`

sed -i "s/db.tars.com/${MachineIp}/g" `grep db.tars.com -rl ./*`

sed -i "s/registry.tars.com/${MachineIp}/g" `grep registry.tars.com -rl ./*`

sed -i "s/web.tars.com/${MachineIp}/g" `grep web.tars.com -rl ./*`

chmod u+x tars_install.sh

./tars_install.sh

./tarspatch/util/init.sh

##安裝nodejs環(huán)境

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

source ~/.bashrc

nvm install v8.11.3

##安裝web管理系統(tǒng)

cd ../

git submodule update --init --recursive web

cd /home/circle/tars/web/

npm install -g pm2 --registry=https://registry.npm.taobao.org

sed -i "s/registry.tars.com/${MachineIp}/g" `grep registry1.tars.com -rl ./config/*`

sed -i "s/db.tars.com/${MachineIp}/g" `grep db.tars.com -rl ./config/*`

npm install --registry=https://registry.npm.taobao.org

npm run prd

cd -

mkdir -p /data/log/tars/

```

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容