Tomcat部署Bolo

Bolo博客

Bolo菠萝博客是基于Solo深度定制的动态博客,内置了更多的精美的皮肤,并且可以本地账号登录。官网文档提供了docker部署和tocat部署两种方式,由于我买的服务器性能有限,并便于后期修改,此次就不采用docker部署,直接安装tomcat部署web环境。

我的服务器的镜像是Alibaba Cloud Linux 3,全面兼容RHEL/CentOS 8生态。

安装java jdk

我选择的是openjdk8:

dnf install -y java-1.8.0-openjdk-devel

/etc/profile配置环境变量:

JAVA_HOME=$(find /usr/lib/jvm -name "java-1.8.0-openjdk-1.8.0*")
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME CLASSPATH PATH

安装Tomcat

下载安装

Bolo需要JavaEE环境,不能选择最新的Tomcat10,需要Tomcat9或者Tomcat8。为加速下载,这里选择国内源,下载最新版的Tomcat9。

MAJOR_VERSION=9
TOMCAT_VER=`curl --silent http://mirrors.cnnic.cn/apache/tomcat/tomcat-${MAJOR_VERSION}/ | grep v${MAJOR_VERSION} | awk '{split($5,c,">v") ; split(c[2],d,"/") ; print d[1]}'`
TOMCAT_VER=$(echo $TOMCAT_VER | cut -d " " -f 1)
echo Tomcat version: $TOMCAT_VER
wget -N http://mirrors.cnnic.cn/apache/tomcat/tomcat-${MAJOR_VERSION}/v${TOMCAT_VER}/bin/apache-tomcat-${TOMCAT_VER}.tar.gz

接下来解压并把tomcat拷贝到/usr/local/目录下

tar -zxvf apache-tomcat-${TOMCAT_VER}.tar.gz
mv apache-tomcat-${TOMCAT_VER} /usr/local/tomcat/

设置服务脚本(Optional)

参考阿里云文档设置自启动脚本。

  1. 运行以下命令下载Tomcat自启动脚本文件。
wget https://raw.githubusercontent.com/oneinstack/oneinstack/master/init.d/Tomcat-init
  1. 运行以下命令移动并重命名Tomcat-init。
mv Tomcat-init /etc/init.d/tomcat
  1. 运行以下命令为/etc/init.d/tomcat添加可执行权限。
chmod +x /etc/init.d/tomcat
  1. 设置脚本里的JAVA_HOMETOMCAT_USER,因为我的服务器直接用的root用户,所以tocat也设置root用户
SED_CMD="s@^export JAVA_HOME=.*@export JAVA_HOME=$(find /usr/lib/jvm -name 'java-1.8.0-openjdk-1.8.0*')@"
sed -i "$SED_CMD" /etc/init.d/tomcat
sed -i "/TOMCAT_USER=/cTOMCAT_USER=root" /etc/init.d/tomcat
  1. 依次运行以下命令设置Tomcat开机自启动。
chkconfig --add tomcat
chkconfig tomcat on
  1. 运行以下命令启动Tomcat。
service tomcat start

安装MySQL

安装

dnf install -y mysql-server

运行以下命令启动MySQL服务。

systemctl start mysqld

运行以下命令设置MySQL服务开机自启动。

systemctl enable mysqld

运行以下命令查看/var/log/mysqld.log文件,获取并记录root用户的初始密码。

grep 'temporary password' /var/log/mysqld.log

运行下列命令对MySQL进行安全性配置。

mysql_secure_installation

配置博客所用MySQL DB和User

根据上面安全性配置中所设定的root账户密码,在终端中输入mysql -uroot -p,并输入密码以root账户登录MySQL后,手动建库,库名solo ,字符集使用utf8mb4,排序规则utf8mb4_general_ci

create database solo default character set utf8mb4 collate utf8mb4_general_ci;
create user 'solo'@'%' identified by 'BrkBpb_78Vkf9';
grant all privileges on *.* to 'solo'@'%';
flush privileges;

这里‘%’是允许远程ip地址登录MySQL,如果选用docker部署会用到。

部署Bolo博客

从Bolo官方Github网站下载已经编译好的代码(zip文件),github或者国内的gitee

wget https://gitee.com/AdlerED/bolo-solo/attach_files/760605/download/bolo_v2_5_stable.zip

删掉tomcat目录的webapp下的其他内容,只留空的ROOT

rm -rf /usr/local/tomcat/webapps/*
mkdir -p /usr/local/tomcat/webapps/ROOT

将Bolo的zip文件解压至目录webapp/ROOT

unzip bolo_v2_5_stable.zip -d /usr/local/tomcat/webapps/ROOT/

在Bolo的WEB-INF/classes目录下修改参数

cd /usr/local/tomcat/webapps/ROOT/WEB-INF/classes/
vim local.properties

修改MySQL的连接参数

runtimeDatabase=MYSQL
jdbc.username=solo
jdbc.password=BrkBpb_78Vkf9
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.URL=jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC

如果Tomcat使用 HTTPS 连接(不使用请忽略),将webapps/ROOT/WEB-INF/classes/latke.properties中的 HTTP 修改为 HTTPS 即可;

启动应用

如果前面设置了tomcat服务脚本,可

service tomcat start

如果没有,用tomcat的bin目录下的脚本

./usr/local/tomcat/bin/startup.sh

然后如果一切没有问题,在本地浏览器访问服务器的8080端口,就能进入博客。

http://${ip}:8080

参考

https://help.aliyun.com/document_detail/172784.html
https://help.aliyun.com/document_detail/171940.html
https://cnxiaobai.com/articles/2021/04/27/1619519011942.html

上一篇:vue-cli · Failed to download repo vuejs-templates/webpack: connect ETIMEDOUT 192.30.253.112:443


下一篇:基于Ubuntu和Stm32的C程序的内存分配问题