3 Star 10 Fork 3

WeFamily/springboot-layui-mysql

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
4年前
Loading...
README

SpringBoot+Layui+MySQL(简称SLM)

环境组成

  • Java
  • Maven
  • MySQL
  • Layui
  • IntelliJ IDEA
  • Navigation Premium
  • Google Chrome
  • Docker

目录结构

  • slm是项目目录
  • sql是初始化数据库的代码
  • imgs是存放效果图
  • readme.md是介绍文档

开发环境

  1. 修改本机的hosts文件,在最后一行下面增加127.0.0.1 mysql
  2. IntelliJ IDEA打开slm即可
  3. 前提:数据库配置的端口是3306,数据库账号是root,密码是<Your Password>,否则需要修改src/main/resources/application.yml中的DataSourceusernamepassword字段
  4. 在Navigation Premium中连接上MySQL数据库,使用sql/slm.sql初始化数据库
  5. 修改工程中的数据库链接密码slm/src/main/resources/application.ymlspring > datasource > password
  6. 找到src下的main/java/com/brucekong/slm/下的SlmApplication.java,右击run 'SlmApplication'
  7. 在Google Chrome中打开http://localhost:8080/即可打开登录页面

Docker部署

Docker基本命令

由于ibrucekong/slm是公有镜像,能查询、推送、拉取等操作。

基本命令(知识点):

  • $ docker ps # 查看运行的镜像
  • $ docker images # 查看所有镜像
  • $ docker rename origin_name wanted_name # 修改容器的name
  • $ docker logs -f container_name # 查看某个容器的log信息
  • $ docker tag image_id repository:tag # 修改镜像的tag
  • $ docker search [docker-image-name] # 查询public的镜像
  • $ docker pull ibrucekong/slm # 拉取镜像
  • $ docker build -t ibrucekong/slm:latest # 构建镜像
  • $ docker run -it -p 8080:8080 ibrucekong/slm:latest # 前面8080是真正运行的端口,后面的8080是内部端口,访问localhost:8080(这里的8080是前面的),ibrucekong/slm是镜像名称,latest是tag
  • $ docker commit -m "comment" -a="author" e218edb10161 ibrucekong/slm:latest # e218edb10161 是容器ID(run起来后,使用docker ps查看,然后停下来,再去push),-a指镜像作者,ibrucekong/slm是镜像名称,latest是tag
  • $ docker push ibrucekong/slm:latest # 推送镜像 latest是tag,如果提示超时,重试即可
  • $ docker inspect ibrucekong/slm # 验证镜像
  • $ docker network create --subnet=172.18.0.0/16 slm # 创建172.18.0.0子网段网络 命名为 slm
  • $ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_id 或 contatiner_name # 查看容器的运行IP
  • https://hub.docker.com/r/ibrucekong/slm/查看是否已经推送成功

拉取数据库:

docker pull mysql # 如果本地没安装mysql,直接使用docker上的

修改数据库信息(知识点):

  • 如果Navicat Premium链接数据库报错,提示2059 - authentication plugin 'caching_sha2_password',则有两种方法可以解决:

    1. 配置MySQL
    # 先修改MySQL的配置文件my.ini或my.cnf,将default_authentication_plugin=mysql_native_password
    # 执行下面语句,进入docker-mysql的linux环境,可以进一步操作数据库
    $ docker exec -it docker-mysql /bin/bash 
    # 执行下面语句,然后输入密码,进入数据库操作命令行
    $ mysql -u root -p
    # 将'你要修改的密码'中的汉字改为你要修改的密码,回车
    $ ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你要改成的密码'; 
    
    1. 升级Navicat Premium

    将Navicat Premium升级到12.0.28以上版本

镜像的提交推送

推送项目包:

  1. 构建镜像

    mvn clean package docker:build

  2. 测试镜像

    docker run --name slm -it -p 8080:8080 ibrucekong/slm

    使用docker ps获取容器ID并记下,比如ID为061463b9b32d

    访问(http://localhost:8080/),其中前面的8080是访问的端口,后面的8080是docker内部启动端口。

  3. 提交镜像

    docker commit -m "提交日志" -a="ibrucekong" 061463b9b32d ibrucekong/slm:latest

  4. 推送镜像

    docker push ibrucekong/slm:latest

推送数据库:

  1. 测试数据库
  2. 提交镜像
  3. 推送镜像

Docker部署

仓库在ibrucekong用户下,public类型,可以通过docker pull ibrucekong/slm:tag获取。

  1. 拉取镜像

    $ docker pull ibrucekong/slm:latest # 拉取项目镜像,不加:latest,默认latest
    
  2. 运行镜像

    # 数据库部署(前提有Git环境)
    
    # Windows设置语句,在git bash中切换到D:\database\,执行以下代码
    $ git clone https://gitee.com/wefamily/mysql.git
    # 使用docker运行要达到持久化,就要连接到本地的mysql数据库,使用 -v
    $ docker run --name docker-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=<Your Password>  -v d:/database/mysql:/var/lib/mysql -d mysql
    
    # Ubuntu设置语句,在git bash中切换到~/Documents/slm/,执行以下代码
    $ git clone https://gitee.com/wefamily/mysql.git
    $ docker run --name docker-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=<Your Password>  -v ~/Documents/slm/mysql:/var/lib/mysql -d mysql
    
    # 在navicat中使用slm.sql文件还原数据库(数据库sql文件在sql文件夹中)
    
    # SLM项目部署
    $ docker run -it -p 8080:8080 --name docker-slm --link docker-mysql:mysql ibrucekong/slm # 再运行项目,关键 --link docker-mysql:mysql 的mysql字段
    
  3. 测试系统

    在浏览器中访问(http://localhost:8080/),系统即可正常运行。

    在浏览器中访问(http://localhost:8080/doc.html),访问接口文档。

DONE

  • 2019.01.30 完成大部分Layui前端页面接口数据对接
  • 2019.01.12 增加Layui前端页面,增加lombok注解,增加Swagger接口文档生成注解;增加菜单生成接口;调整资源引用路径
  • 2018.11.15 更改包名
  • 2018.11.14 完成docker部署,tag:0.0.2
  • 2018.11.13 解决登录时点击两次的bug
  • 2018.11.07 集成MySQL持久化
  • 2018.11.06 Docker的集成,集成在ibrucekong用户下,仓库slm,可以通过docker pull ibrucekong/slm获取
  • 2018.10.29 Springboot的搭建,MySQL的集成,登录界面的嵌入

TODO

  • 完善忘记密码面板
  • 逐步设计数据库(现在只是完成了数据的拉取,数据库逻辑并未设计)
  • 编写接口实现Layui的admin 1.0.0 pro版本的剩余接口(高级->通讯系统:加好友,发消息)

效果图展示

  • 系统展示界面

登录

main

  • 接口文档展示界面

DOC

空文件

简介

一个使用SSM架构,集成Layui,MySQL,搭建一个学习的示例 展开 收起
取消

发行版

暂无发行版

贡献者 (1)

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/wefamily/springboot-layui-mysql.git
git@gitee.com:wefamily/springboot-layui-mysql.git
wefamily
springboot-layui-mysql
springboot-layui-mysql
master

搜索帮助