feat: update docs (#47)
74
README.md
|
@ -1,82 +1,24 @@
|
|||
# Databasir
|
||||
|
||||
## 文档索引
|
||||
|
||||
- [项目简介](#)
|
||||
- [部署指引](README/deploy.md)
|
||||
- [构建指引](README/build.md)
|
||||
|
||||
更多指引
|
||||
- [Databasir 之 Github 一键登录(OAuth2)配置](README/github-oauth2/github-oauth2.md)
|
||||
- [Databasir 之 Gitlab 一键登录(OAuth2)配置](README/gitlab-oauth2/gitlab-oauth2.md)
|
||||
- [Databasir 保姆级教程之 Docker 一键部署](README/docker-deploy/docker-deploy.md)
|
||||
|
||||
## 简介
|
||||
|
||||
**Databasir** 是一款集中式的数据库文档管理工具,提供了自动化、版本化、扁平化的数据库文档管理能力,主要功能如下
|
||||
|
||||
1. 理论上支持所有拥有 JDBC 驱动的数据库,目前 mysql、postgresql 可以开箱即用
|
||||
2. 支持 github / github-enterprise / gitlab 的 OAuth2 登录,全图形化配置
|
||||
3. 支持手动、定时同步数据库结构并自动生成可读性优秀的文档、UML 图
|
||||
4. 支持多文件格式导出,如 markdown
|
||||
5. 历史模型版本化,一键查看历史版本
|
||||
6. 多人协作字段讨论,口口相传不如立个字据
|
||||
7. 扁平化的团队管理模式,灵活适应不同团队组织架构
|
||||
|
||||
## 支持数据库
|
||||
|
||||
1. - [x] Mysql
|
||||
2. - [x] Postgresql
|
||||
3. - [ ] Oracle
|
||||
4. - [ ] SqlServer
|
||||
1. 支持所有实现 JDBC 协议的数据库(如 mysql、postgresql、sqlserver等)
|
||||
2. 支持 Markdown 文档、Excel 文档(TODO)、UML 图片导出
|
||||
3. 支持 Github / Github Enterprise / Gitlab 的 OAuth2 登录配置
|
||||
4. 支持文档自动同步、历史版本查看、团队讨论、字段描述等
|
||||
5. 扁平化的团队管理模式,灵活适应不同团队组织架构
|
||||
|
||||
|
||||
## 功能规划
|
||||
|
||||
- [x] 用户操作审计日志
|
||||
- [x] 文档自动同步日志
|
||||
- [ ] Excel 文档导出
|
||||
- [x] Markdown 文档导出
|
||||
- [x] Github OAuth2 登录模式
|
||||
- [x] Gitlab OAuth2 登录模式
|
||||
- [x] 模型 UML 生成
|
||||
- [ ] UML 图片导出
|
||||
**## 功能展示**
|
||||
|
||||
|
||||
## 展示
|
||||
|
||||
- 文档页面
|
||||
\- 文档页面
|
||||
|
||||

|
||||
|
||||
- 分组创建
|
||||
|
||||

|
||||
|
||||
- 项目创建
|
||||
|
||||

|
||||
|
||||
- 项目同步
|
||||
|
||||

|
||||
|
||||
- 协作讨论
|
||||
|
||||

|
||||
|
||||
- 分组成员
|
||||
|
||||

|
||||
|
||||
- 用户创建
|
||||
|
||||

|
||||
|
||||
- 用户详情
|
||||
|
||||

|
||||
|
||||
- 操作日志
|
||||
|
||||

|
||||

|
|
@ -1,86 +0,0 @@
|
|||
# 部署指引
|
||||
|
||||
## 前言
|
||||
|
||||
Databasir 采用了前后端分离的模式进行开发和部署,项目仓库地址分别位于
|
||||
|
||||
- 后端应用: https://github.com/vran-dev/databasir
|
||||
- 前端应用: https://github.com/vran-dev/databasir-frontend
|
||||
|
||||
当前提供了 Jar 和 Docker 两种部署方式
|
||||
|
||||
### JAR 模式部署
|
||||
|
||||
**一、环境要求**
|
||||
|
||||
1. Java 11+
|
||||
2. Mysql
|
||||
|
||||
**二、部署流程**
|
||||
|
||||
1. 在 [Github RELEASE](https://github.com/vran-dev/databasir/releases) 页面下载最新版应用 Databasir.jar (你也可以选择克隆项目后自行构建)
|
||||
2. 将 Databasir.jar 上传到服务器
|
||||
3. 在 Databasir.jar 所在目录创建 config 目录,并在目录下创建 `application.properties` 配置,配置中配置 MYSQL 的用户名、密码和连接
|
||||
|
||||
```properties
|
||||
# 端口号,默认 8080
|
||||
server.port=8080
|
||||
# 数据库用户名
|
||||
databasir.db.username=root
|
||||
# 数据库密码
|
||||
databasir.db.password=123456
|
||||
# 数据库地址
|
||||
databasir.db.url=127.0.0.1:3306
|
||||
```
|
||||
|
||||
4. 通过 java -jar Databasir.jar 启动应用即可
|
||||
|
||||
**三、系统登陆**
|
||||
|
||||
应用启动后会默认创建 Databasir 管理员用户
|
||||
|
||||
- 用户名:databasir
|
||||
- 密码:databasir
|
||||
|
||||
通过该账号登录应用既可以进行管理
|
||||
|
||||
### Docker 部署
|
||||
|
||||
目前镜像没有上传到 DockerHub,需要用户自己在本地手动构建
|
||||
|
||||
1. 克隆仓库
|
||||
|
||||
```shell
|
||||
git clone https://github.com/vran-dev/databasir.git
|
||||
```
|
||||
|
||||
2. 构建镜像
|
||||
|
||||
```shell
|
||||
docker build -f Dockerfile -t databasir:v1 .
|
||||
```
|
||||
|
||||
如果你本地有 Java 环境的话我建议通过 gradle 先编译项目再构建镜像,这样会更快
|
||||
```shell
|
||||
# 先编译项目
|
||||
./gradlw api:build
|
||||
|
||||
# 再构建镜像
|
||||
docker build -f local.Dockerfile -t databasir:v1 .
|
||||
```
|
||||
|
||||
3. 启动项目
|
||||
|
||||
通过 Docker 启动项目也需要通过环境变量来配置数据库信息
|
||||
|
||||
- DATABASIR_DB_URL 数据库地址
|
||||
- DATABASIR_DB_USERNAME 数据库用户
|
||||
- DATABASIR_DB_PASSWORD 数据库密码
|
||||
|
||||
```shell
|
||||
docker run --name databasir-demo -e DATABASIR_DB_URL=local_default:3306 -e DATABASIR_DB_USERNAME=root -e DATABASIR_DB_PASSWORD=123456 databasir:v1
|
||||
```
|
||||
|
||||
## Docker Compose 本地部署
|
||||
|
||||
TODO
|
|
@ -0,0 +1,61 @@
|
|||
|
||||
# 简介
|
||||
|
||||
**Databasir** 是一款集中式的数据库文档管理工具,提供了自动化、版本化、扁平化的数据库文档管理能力,主要功能如下
|
||||
|
||||
1. 支持所有实现 JDBC 协议的数据库(如 mysql、postgresql、sqlserver等)
|
||||
2. 支持 Markdown 文档、Excel 文档(TODO)、UML 图片导出
|
||||
3. 支持 Github / Github Enterprise / Gitlab 的 OAuth2 登录配置
|
||||
4. 支持文档自动同步、历史版本查看、团队讨论、字段描述等
|
||||
5. 扁平化的团队管理模式,灵活适应不同团队组织架构
|
||||
|
||||
|
||||
## 功能规划
|
||||
|
||||
- [x] 用户操作审计日志
|
||||
- [x] 文档自动同步日志
|
||||
- [ ] Excel 文档导出
|
||||
- [x] Markdown 文档导出
|
||||
- [x] Github OAuth2 登录模式
|
||||
- [x] Gitlab OAuth2 登录模式
|
||||
- [x] 模型 UML 生成
|
||||
- [x] UML 图片导出
|
||||
|
||||
|
||||
## 功能展示
|
||||
|
||||
- 文档页面
|
||||
|
||||

|
||||
|
||||
- 分组创建
|
||||
|
||||

|
||||
|
||||
- 项目创建
|
||||
|
||||

|
||||
|
||||
- 项目同步
|
||||
|
||||

|
||||
|
||||
- 协作讨论
|
||||
|
||||

|
||||
|
||||
- 分组成员
|
||||
|
||||

|
||||
|
||||
- 用户创建
|
||||
|
||||

|
||||
|
||||
- 用户详情
|
||||
|
||||

|
||||
|
||||
- 操作日志
|
||||
|
||||

|
|
@ -1,4 +1,4 @@
|
|||
# 构建指引
|
||||
# 构建指南
|
||||
|
||||
## 前言
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
# 扩展数据库类型
|
||||
|
||||
## 说明
|
||||
|
||||
[Databasir](https://github.com/vran-dev/databasir) 理论上是支持所有**拥有 JDBC 驱动的数据库**,系统已为 Mysql、Postgresql 提供了内置的支持,这两种数据库可以开箱即用。
|
||||
|
||||
|
||||
对于其它数据库(有 JDBC 驱动),用户也只需要简单的配置就可以支持
|
||||
|
||||
|
||||
## 配置
|
|
@ -1,17 +1,15 @@
|
|||
# Databasir 保姆级教程之 Docker 一键部署
|
||||
# Docker 部署
|
||||
|
||||
[Databasir](https://github.com/vran-dev/databasir) 现在已经准备好了开箱即用的 Docker Image,你只需要简单两步就可以完成一个 Databasir 应用的构建
|
||||
|
||||
|
||||
## 环境要求
|
||||
|
||||
## 前提条件
|
||||
|
||||
1. 用户系统已经有了 Docker 环境
|
||||
2. 已经有可以连接的 Mysql 数据库
|
||||
1. Docker
|
||||
2. Mysql
|
||||
|
||||
|
||||
|
||||
## 安装步骤
|
||||
## 部署流程
|
||||
|
||||
1. 拉取最新版镜像,当然你也可以将 latest 替换成你想要得版本号,具体有哪些镜像版本可以拉取可以在[这里](https://registry.hub.docker.com/r/vrantt/databasir)查看
|
||||
|
||||
|
@ -31,7 +29,7 @@ docker run --name my-databasir -e DATABASIR_DB_URL=127.0.0.1:3306 -e DATABASIR_D
|
|||
|
||||
这里解释一下各个命令参数
|
||||
|
||||
- `-- name` 代表镜像启动后的名称,你可以随意命名
|
||||
- `--name` 代表镜像启动后的名称,你可以随意命名
|
||||
- `-e` 指定环境变量,databasir 需要依赖 3 个环境变量,所以用 `-e` 指定了 3 个变量,它们分别是
|
||||
1. DATABASIR_DB_URL 数据库地址
|
||||
2. DATABASIR_DB_USERNAME 数据库账号名称
|
||||
|
@ -47,3 +45,13 @@ docker run --name my-databasir -e DATABASIR_DB_URL=127.0.0.1:3306 -e DATABASIR_D
|
|||
- 密码:databasir
|
||||
|
||||
这时候访问 http://localhost:8888 进入登录页,输入上面的账号和密码即可成功登入。
|
||||
|
||||
|
||||
## 登录验证
|
||||
|
||||
应用启动完成后会默认创建 Databasir 管理员用户
|
||||
|
||||
- 用户名:databasir
|
||||
- 密码:databasir
|
||||
|
||||
通过该账号登录应用既可以进行管理
|
|
@ -0,0 +1,34 @@
|
|||
# Jar 包部署
|
||||
|
||||
## 环境要求
|
||||
|
||||
1. Java 11+
|
||||
2. Mysql
|
||||
|
||||
## 部署流程
|
||||
|
||||
1. 在 [Github RELEASE](https://github.com/vran-dev/databasir/releases) 页面下载最新版应用 Databasir.jar (你也可以选择克隆项目后自行构建)
|
||||
2. 将 Databasir.jar 上传到服务器
|
||||
3. 在 Databasir.jar 所在目录创建 config 目录,并在目录下创建 `application.properties` 配置,配置中配置 MYSQL 的用户名、密码和连接
|
||||
|
||||
```properties
|
||||
# 端口号,默认 8080
|
||||
server.port=8080
|
||||
# 数据库用户名
|
||||
databasir.db.username=root
|
||||
# 数据库密码
|
||||
databasir.db.password=123456
|
||||
# 数据库地址
|
||||
databasir.db.url=127.0.0.1:3306
|
||||
```
|
||||
|
||||
4. 通过 `java -jar Databasir.jar` 启动应用即可
|
||||
|
||||
## 登录验证
|
||||
|
||||
应用启动完成后会默认创建 Databasir 管理员用户
|
||||
|
||||
- 用户名:databasir
|
||||
- 密码:databasir
|
||||
|
||||
通过该账号登录应用既可以进行管理
|
Before Width: | Height: | Size: 534 KiB After Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
|
@ -54,7 +54,3 @@ Authorization callback URL 你可以先填写 {{ databasir 域名 }}/login/oaut
|
|||
点击就会进入授权页面,授权完成就会创建一个新的 databasir 用户,并直接登录成功
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
## 配置 Gitlab OAuth2 登录
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
|
@ -1,3 +1,5 @@
|
|||
# Databasir 配置 Github OAuth2 登录
|
||||
|
||||
1. 创建 Gitlab 应用,填写应用名称、回调地址等信息,注意下面授权一定记得勾选上 **read_user**
|
||||
|
||||
回调地址填写你访问 databasir 的公网地址 {{ databasir 地址 }}/login/oauth2/{{ 应用ID }}
|
Before Width: | Height: | Size: 146 KiB After Width: | Height: | Size: 146 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 564 KiB After Width: | Height: | Size: 564 KiB |
Before Width: | Height: | Size: 958 KiB After Width: | Height: | Size: 958 KiB |
Before Width: | Height: | Size: 380 KiB After Width: | Height: | Size: 380 KiB |
Before Width: | Height: | Size: 893 KiB After Width: | Height: | Size: 893 KiB |
Before Width: | Height: | Size: 402 KiB After Width: | Height: | Size: 402 KiB |
Before Width: | Height: | Size: 806 KiB After Width: | Height: | Size: 806 KiB |
Before Width: | Height: | Size: 535 KiB After Width: | Height: | Size: 535 KiB |
|
@ -0,0 +1,15 @@
|
|||
* 项目
|
||||
* [简介](README.md)
|
||||
* 部署方式
|
||||
* [Jar 包部署](README/deploy/jar-deploy.md)
|
||||
* [Docker 部署](README/deploy/docker-deploy.md)
|
||||
* 功能指引
|
||||
* [Github OAuth2 配置](README/github-oauth2/github-oauth2.md)
|
||||
* [Gitlab OAuth2 配置](README/gitlab-oauth2/gitlab-oauth2.md)
|
||||
* [扩展数据库类型](README/database-extension/database-extension.md)
|
||||
|
||||
* 参与开发
|
||||
* [构建指南](README/build.md)
|
||||
|
||||
* 捐赠
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Document</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta name="description" content="Description">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
|
||||
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/docsify@4/lib/themes/vue.css">
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script>
|
||||
window.$docsify = {
|
||||
loadSidebar: true,
|
||||
maxLevel: 2,
|
||||
subMaxLevel: 4,
|
||||
name: 'Databasir',
|
||||
repo: 'https://github.com/vran-dev/databasir',
|
||||
alias: {
|
||||
'/.*/_sidebar.md': '/_sidebar.md'//防止意外回退
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<!-- Docsify v4 -->
|
||||
<script src="//cdn.jsdelivr.net/npm/docsify@4"></script>
|
||||
</body>
|
||||
</html>
|