Tomcat部署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)

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

运行以下命令下载Tomcat自启动脚本文件。

wget https://raw.githubusercontent.com/oneinstack/oneinstack/master/init.d/Tomcat-init

运行以下命令移动并重命名Tomcat-init。

mv Tomcat-init /etc/init.d/tomcat

运行以下命令为/etc/init.d/tomcat添加可执行权限。

chmod +x /etc/init.d/tomcat

设置脚本里的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

依次运行以下命令设置Tomcat开机自启动。

chkconfig --add tomcat
chkconfig tomcat on

运行以下命令启动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

到此这篇关于Tomcat部署Bolo的文章就介绍到这了,更多相关Tomcat部署Bolo内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2022-01-13

Tomcat多实例部署及配置原理

1.关闭防火墙,将安装 Tomcat 所需软件包传到/opt目录下 jdk-8u201-linux-x64.rpm apache-tomcat-9.0.16.tar.gz systemctl stop firewalld systemctl disable firewalld setenforce 0 2.安装JDK cd /opt rpm -qpl jdk-8u201-linux-x64.rpm rpm -ivh jdk-8u201-linux-x64.rpm java -version 3.

GitLab+Jenkins+Maven+Tomcat 实现自动集成、打包、部署

目录 一.安装 Tomcat 服务 二.在 Jenkins 上安装 Maven 1.安装 Maven 2.创建 Jenkins 任务 3.验证 一.安装 Tomcat 服务 1.安装 JDK JDK 下载地址:传送门(需要创建 Oracle 账号) [root@Tomcat ~]# ls anaconda-ks.cfg jdk-8u181-linux-x64.tar.gz [root@Tomcat ~]# tar zxf jdk-8u181-linux-x64.tar.gz [root@Tomc

jenkins+maven+svn自动部署和发布的详细图文教程

Jenkins Jenkins是一个开源的.可扩展的持续集成.交付.部署的基于web界面的平台.允许持续集成和持续交付项目,无论用的是什么平台,可以处理任何类型的构建或持续集成. 通常我们使用Jenkins主要实现以下功能: 持续集成指的是,频繁地(一天多次)将代码集成到主干.将软件个人研发的部分向软件整体部分交付,频繁进行集成以便更快地发现其中的错误. 持续交付指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评审.如果评审通过,代码就进入生产阶段. 正文开始 博主前几个月刚被忽悠到一

centos下GitLab+Jenkins持续集成环境搭建(安装jenkins)

centos下搭建GitLab+Jenkins持续集成环境,供大家参考,具体内容如下 1.安装JDK yum install -y java 2.安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装. wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo rpm --import https://jenkins-ci.org/redhat/jenkins

Jenkins如何使用DockerFile自动部署Java项目

Jenkins下用DockerFile自动部署Java(SpringBoot)项目,简单自用,勿喷 一.Jenkins构建Java(SpringBoot)项目 新建-构建一个Maven项目 需要提一下,现在新安装的没有这个选项,需要在插件里安装一下 Maven Integration java配置,其他配置查看以前文章 以上配置即可配置完成 二.发布到服务器,DockerFile部署自动构建 Publish SSH配置 这里在目标服务器上放了个shell命令,我这里的web是做了个Nginx的负

IDEA Maven Mybatis generator 自动生成代码(实例讲解)

IDEA Maven Mybatis generator 自动生成代码的实例讲解 一.安装配置maven以及在Idea中配置maven 安装过程步骤可以看上面的博文,里面介绍得很详细. 二.建数据表 DROP TABLE IF EXISTS `t_user`; CREATE TABLE `t_user` ( `id` varchar(100) NOT NULL, `username` varchar(20) DEFAULT NULL, `password` varchar(20) DEFAULT

详解springboot项目带Tomcat和不带Tomcat的两种打包方式

1,带Tomcat的打包方式 1.1, 在pom.xml文件添加以下配置(目的:自定main入口和跳过Junit代码) <build> <plugins> <!--打包为jar时指定main入口--> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <

Java随手笔记8之包、环境变量和访问控制及maven profile实现多环境打包

一.java中的包 Java利用包来组织代码,一来使大型项目的代码结构清晰,二来包是一个命名空间的划分,即不同包中可以有相同名字的类,只需在在类名前加上包名即可区分它们. Package xxx 必须位于java文件除了注释以外的第一行,用来指明当前文件中的类属于哪一个包,如果没有package语句,则该文件中的类都属于默认包. Import xxx用来在当前java文件中导入不属于当前包中的类,从而可以在当前文件中使用它们. 二.java中的环境变量 1.path 环境变量其实就是一组变量(废

maven多模块工程打包部署的方法步骤

一般maven多模块工程结构如下图,图中分为dao数据层和上层web层(当然还可以有service层),在进行多模块划分的时候,一般将dao层采用jar进行打包,web层进行war打包.在进行war包部署时,发现dao是以jar包形式存在于lib包目录下,如果在部署服务器上需要进行相关配置修改会比较麻烦.因此研究了下用maven进行合并打包的方法: 1.确保dao pom.xml中有以下配置 <resources> <resource> <directory>${bas

Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案

遇到的问题 使用webpack打包vue后,将打包好的文件,发布到Tomcat上,访问成功,但是刷新后页面报404错. 在网上查找了一下,原来是HTML5 History 模式引发的问题,具体为什么,vue官方已经给出了解释,你可以看https://router.vuejs.org/zh-cn/essentials/history-mode.html 但是看完问题又来了,官方给出的解决方案中没有说tomcat下,怎么决解. 解决方案 根据官方给出的解决方案原理 你要在服务端增加一个覆盖所有情况的

使用Maven tomcat:run命令启动web项目时修改默认端口的方法

在使用maven时,修改插件tomcat启动端口.一开始我在pom.xml配置文件里面修改,如下面所示: <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <port>9999&

React Native 实现热更新并自动签名打包功能

项目背景:手动link的安卓App 1.下载 react-native-code-push npm install --save react-native-code-push 2.在android/settings.gradle文件下新增: include ':app', ':react-native-code-push' project(':react-native-code-push').projectDir = new File(rootProject.projectDir, '../no