使用shell脚本安装Discuz!论坛
部署环境
华为云CentOS 7.5 64bit with ARM ,规格2vCPUs 4GB ,
完成部署
安装大佬的博客,复制黏贴后,既可以完成一个Discuz!论坛的部署。
完成后结果如下:
自己写脚本安装
感觉一直复制黏贴效率太低,就自己写了个bash脚本。完成相应的安装!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# !/bin/bash
start_message(){
cat << ENTER
============= 脚本安装工具 =============
Version: 0.1
Date: 20200616
Author:小刘同学
Usage: 安装Discuz!论坛
e.g.: chmod 777 ./*.sh && ./install.sh
============= 脚本安装工具 =============
ENTER
}
finish_message(){
cat << FINISH
============= 脚本安装工具 =============
脚本已经安装完成
默认数据库名称:kunpeng
数据库用户名:root
数据库密码:123456
将服务器ip地址,复制到网站即可进行下一步安装
============= 脚本安装工具 =============
FINISH
}
do_install(){
# 安装apache
yum install httpd -y
# 安装php编译器
yum install php -y
# 安装php-mysql插件
yum install php-mysql -y
# 安装mariadb数据库
yum install mariadb-server mariadb -y
# 安装 wget
yum install wget -y
# 安装Discuz!
# 下载
wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/kunpeng/Discuz_SC_UTF8.zip
# 解压
unzip -d ./Discuz ./Discuz_SC_UTF8.zip
#移动
mv ./Discuz/Discuz_SC_UTF8/upload/* /var/www/html/
#加权限
chmod -R 777 /var/www/html/*
}
start_server(){
# 启动httpd服务
service httpd start
# 启动数据库
systemctl start mariadb
}
start_forever(){
# 重启生效数据库
systemctl enable mariadb
# 重启生效http服务
chkconfig httpd on
}
my_sql(){
#read -p "输入密码" input
#mysql -u root -p$input
mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'IDENTIFIED BY '123456' WITH GRANT OPTION;
CREATE DATABASE kunpeng;flush privileges
}
fileName=$1
read -p "Discuz!论坛 $1? yes|no: " input
if [ $input == "yes" ] || [ $input == "y" ]
then
echo "2秒开始安装"
start_message
sleep 2
do_install
echo "安装完成,进行服务启动设置"
start_server
start_forever
echo "设置完成,进入数据库设置"
my_sql
# 所有设置好的环境变量都生效
service httpd restart
finish_message
elif [ $input == "no" ] || [ $input == "n" ]
then
exit 0
else
echo "输入错误,请重试"
exit
fi
对脚本的编写,还不是非常的熟悉。可能会出现未知的bug,但大体流程就是这样的。