-
Notifications
You must be signed in to change notification settings - Fork 43
部署指南
不少师傅反馈,在项目搭建的过程中还是遇到一些问题,由此出一个"保姆式"教程
Java环境:Java 8 Maven也使用Java 8
Docker与Docker compose 环境
执行 sql/JavaSecLab.sql 文件
修改配置文件application.yml active为dev(项目默认为docker 如果搭建的过程中出现数据库连接错误 师傅们可以注意下这里)
spring:
# 环境 dev|docker
profiles:
active: dev
username: root
password: QWE123qwe
url: jdbc:mysql://localhost:13306/JavaSecLab?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true&allowMultiQueries=true
初始账号密码:admin/admin(后台可修改)
编译遇到麻烦的师傅,可以直接下载最新Release版本,在项目根目录下新建target子目录,将JavaSecLab.jar移动到这里,即可跳过编译阶段,直接下列命令进行部署
docker-compose -p javaseclab up -d
条件:已安装docker和docker-compose
docker部署过程中 sql文件没有初始化执行的话(即数据库为空) 需要手动导入下sql文件
mvn clean package -DskipTests
docker-compose -p javaseclab up -d
mvn clean package -DskipTests # maven编译报错
解决方法:检查下jdk与maven版本 可能会是下面👇情况 emmmm~
按照要求进行配置,必要时可以重装下jdk、maven
docker-compose -p javaseclab up -d
解决方法:更换镜像源
vim /etc/docker/daemon.json
# 替换为下面内容
{
"registry-mirrors": [
"https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com",
"https://mirror.ccs.tencentyun.com",
"https://0dj0t5fb.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"https://6kx4zyno.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://akchsmlh.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
后续进行刷新配置、重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
项目默认使用80端口,可以通过修改下面三个文件更改端口
正常部署后,使用默认账号密码admin/admin无法登录,日志显示user表找不到
Docker Compose 自动构建过程中,SQL文件可能没有初始化执行,需要自己手动导入
至于为什么没有自动执行,具体原因我也不清楚,有时候可以成功,可能跟环境有关系🤔
解决方法:使用navicat本地连接数据库后,右键运行SQL文件,当然使用命令行也是可以的
首页一些漏洞类型打不开(点击无反应),例如SQL注入下的Hibernate、JPA等,有两种可能:
1、一是优先级不高,先搁置一下,用来提醒自己
2、漏洞场景不好写,还在调研
此外,感兴趣的师傅可以提PR补充漏洞场景……