此文档针对于1.1.*版本 不适用于1.0.* 如果之前有同学已经安装了1.0.*版本,可以根据IBO 1.0.*升级1.1.*升级文档 对自己服务进行升级
当前文档为服务的安装与使用文档
项目地址:https://github.com/ijson/in-blog-boot
1. 首先需要安装数据库,目前支持mongodb,后期会支持跟多数据库,其中也会支持关系型数据,
安装Mongodb教程如下
后期其他系统的安装教程完善后,会在此补充
2. 修改项目resources/autoconf/in-blog-mongodb文件
# mongodb地址,默认端口27017,如果需要密码,则需要将密码写到地址上,
# mongo.servers=mongodb://用户名:密码@localhost:27017
mongo.servers = mongodb://localhost
# mongodb 数据库
mongo.dbName = test
#存储db的entity映射,不需要修改
mongo.mapPackage = com.ijson.blog.dao.entity
mongo.connectTimeout = 5000
mongo.socketTimeout = 10000
#是否启用密码,如果mongo.servers上添加了密码,则此处必须为true
encrypt.pwd=false
process.server.id=1
3. 修改resource/application.properties文件
server.servlet.session.timeout = 1800s
server.tomcat.max-threads=0
server.torestartmcat.uri-encoding=UTF-8
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.cache=false
spring.thymeleaf.encoding=UTF-8
spring.devtools.restart.enabled=true
spring.devtools.restart.additional-paths=resources/**,static/**,templates/**,src/main/java
debug:true
beetl.suffix=html
spring.cache.ehcache.config=ehcache.xml
#单个文件的最大上限
spring.servlet.multipart.max-file-size=100MB
#总数据的大小
spring.servlet.multipart.max-request-size=1000MB
#目前头像与预制头像,暂不支持更改
avatar.server=http://avatar.ijson.net/
#################################↓↓↓以下为可自定义配置↓↓↓####################
# 服务端口
server.port=8876
# 服务地址
#web.ctx=https://www.ijson.net/
web.ctx=http://localhost:8876
# 系统管理员名称
web.ename=cuiyongxu
# 文件下载路径及上传路径
cdn.server=https://atta.ijson.net/
# 文件上传到服务器路径
cdn.upload.path=/root/data/
#################################↑↑↑以上为可自定义配置↑↑↑####################
4. 初始化权限,下载脚本,将数据导入到库中,此处的Auth.json为下载的文件重命名
https://data.ijson.net/files/1580391242303.json
执行导入命令:
./mongoimport -h localhost -d post -c Auth --drop /Users/cuiyongxu/Desktop/local/Auth.json
localhost 为mongodb ip地址
post 为所对应的db
5. 新增网站配置表,与1.0.0相比,将网站信息和用户信息分离 ,并导入到库中
https://data.ijson.net/files/1580268481402.json
./mongoimport -h localhost -d post -c Config --drop /Users/cuiyongxu/Desktop/local/Config.json
6. 新增角色表,与1.0.0相比,将角色和权限完全分离,解决耦合性问题
https://data.ijson.net/files/1580391257074.json
./mongoimport -h localhost -d post -c Role --drop /Users/cuiyongxu/Desktop/local/Role.json
7. 初始化脚本,用户账号名称:admin,默认密码为:123456,有些同学会问,没有这张表呀,这需要你将服务启动一下,就会自动创建User表,启动命令见 第8 条
db.getCollection('User').insert({
"_id" : "5d596de34737fb1c7adoooof",
"ename" : "admin",
"cname" : "系统管理员",
"password" : "e10adc3949ba59abbe56e057f20f883e",
"deleted" : false,
"enable" : true,
"indexName" : "IBO",
"avatar" : "https://data.ijson.net/avatar.jpg",
"roleId" : "5df63d128faa4b3ab4049cbc"
})
8 .进入项目路径下的in-blog-web子模块中,修改start.sh文件,将bash_path 修改为你项目的绝对路径
#!/usr/bin/env bash
# 需要将此地址修改为你in-blog-web父级目录
IBO_HOME=/Users/cuiyongxu/workspace/ijson/in-blog-boot
cd $IBO_HOME
git pull
mvn install -Dmaven.test.skip=true
cd $IBO_HOME/in-blog-common
mvn clean install -Dmaven.test.skip=true
cd $IBO_HOME/in-blog-auth
mvn clean install -Dmaven.test.skip=true
cd $IBO_HOME/in-blog-core
mvn clean install -Dmaven.test.skip=true
cd $IBO_HOME/in-blog-web
pid=$(ps -ef | grep "in-blog-web" | grep -v grep | awk '{print $2}')
echo "current in-blog-web pid:" $pid
if [ ! -n "$pid" ];then
echo "service not started"
else
kill -9 $pid
fi
DATE=$(date +%Y%m%d%H%M%S)
cd $IBO_HOME/in-blog-web
if [ ! -f "$IBO_HOME/in-blog-web/nohup.out" ]; then
if [ ! -d "$IBO_HOME-log/" ]; then
mkdir $IBO_HOME-log/
fi
mv $IBO_HOME/in-blog-web/nohup.out $IBO_HOME-log/$DATE.log
fi
cd $IBO_HOME/in-blog-web/
nohup mvn spring-boot:run >> nohup.out 2>&1 &
pid=$(ps -ef | grep "in-blog-web" | grep -v grep | awk '{print $2}')
echo "start in-blog-web success, pid:" $pid
9. 修改该start.sh 后, 执行该脚本后,服务就启动起来了,具体端口按照第3部配置进行启动
10.有一点需要注意,默认情况下新注册的用户是可以进行发布文章的,只是需要审核,如果不希望有用户注册,可以关闭注册入口
11. 如果希望用户注册,但是不希望用户发表文章,则可以进入到角色管理,将注册用户中的后台管理平台去掉,用户则无法进入到后台管理系统中,也就无法正常发表文章