@ -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 |
|||
|
|||
|
|||
## 功能规划 |
|||
|
|||
- [x] 用户操作审计日志 |
|||
- [x] 文档自动同步日志 |
|||
- [ ] Excel 文档导出 |
|||
- [x] Markdown 文档导出 |
|||
- [x] Github OAuth2 登录模式 |
|||
- [x] Gitlab OAuth2 登录模式 |
|||
- [x] 模型 UML 生成 |
|||
- [ ] UML 图片导出 |
|||
|
|||
|
|||
## 展示 |
|||
|
|||
- 文档页面 |
|||
|
|||
![uml](README/document-uml.gif) |
|||
|
|||
- 分组创建 |
|||
|
|||
![](README/group-create.gif) |
|||
|
|||
- 项目创建 |
|||
|
|||
![](README/project-create.gif) |
|||
|
|||
- 项目同步 |
|||
|
|||
![](README/project-sync.gif) |
|||
|
|||
- 协作讨论 |
|||
1. 支持所有实现 JDBC 协议的数据库(如 mysql、postgresql、sqlserver等) |
|||
2. 支持 Markdown 文档、Excel 文档(TODO)、UML 图片导出 |
|||
3. 支持 Github / Github Enterprise / Gitlab 的 OAuth2 登录配置 |
|||
4. 支持文档自动同步、历史版本查看、团队讨论、字段描述等 |
|||
5. 扁平化的团队管理模式,灵活适应不同团队组织架构 |
|||
|
|||
![](README/document-discussion.gif) |
|||
|
|||
- 分组成员 |
|||
|
|||
![](README/group-member.gif) |
|||
**## 功能展示** |
|||
|
|||
- 用户创建 |
|||
|
|||
![](README/user-create.gif) |
|||
|
|||
- 用户详情 |
|||
\- 文档页面 |
|||
|
|||
![](README/user-detail.gif) |
|||
|
|||
- 操作日志 |
|||
|
|||
![](README/log-list.gif) |
|||
![uml](docs/README/document-uml.gif) |
@ -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 图片导出 |
|||
|
|||
|
|||
## 功能展示 |
|||
|
|||
- 文档页面 |
|||
|
|||
![uml](README/document-uml.gif) |
|||
|
|||
- 分组创建 |
|||
|
|||
![](README/group-create.gif) |
|||
|
|||
- 项目创建 |
|||
|
|||
![](README/project-create.gif) |
|||
|
|||
- 项目同步 |
|||
|
|||
![](README/project-sync.gif) |
|||
|
|||
- 协作讨论 |
|||
|
|||
![](README/document-discussion.gif) |
|||
|
|||
- 分组成员 |
|||
|
|||
![](README/group-member.gif) |
|||
|
|||
- 用户创建 |
|||
|
|||
![](README/user-create.gif) |
|||
|
|||
- 用户详情 |
|||
|
|||
![](README/user-detail.gif) |
|||
|
|||
- 操作日志 |
|||
|
|||
![](README/log-list.gif) |
@ -1,4 +1,4 @@ |
|||
# 构建指引 |
|||
# 构建指南 |
|||
|
|||
## 前言 |
|||
|
@ -0,0 +1,11 @@ |
|||
# 扩展数据库类型 |
|||
|
|||
## 说明 |
|||
|
|||
[Databasir](https://github.com/vran-dev/databasir) 理论上是支持所有**拥有 JDBC 驱动的数据库**,系统已为 Mysql、Postgresql 提供了内置的支持,这两种数据库可以开箱即用。 |
|||
|
|||
|
|||
对于其它数据库(有 JDBC 驱动),用户也只需要简单的配置就可以支持 |
|||
|
|||
|
|||
## 配置 |
@ -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 |
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> |