docker部署开源的SQL审核平台Yearning

Docker 一键部署 Yearning SQL 审核平台

Yearning 是一款开箱即用的 SQL 审核平台,支持 MySQL 数据库的 SQL 语法审核、SQL 执行、回滚等核心功能。本文介绍如何使用 Docker Compose 快速部署 Yearning。

一、环境准备

  • 操作系统:Linux(CentOS 7+ / Ubuntu 18.04+)
  • 已安装 Docker 和 Docker Compose
  • 开放端口:8000(Yearning Web 端口)

二、部署步骤

1. 拉取镜像

bash 复制代码
# 拉取 Yearning 镜像
docker pull yeelabs/yearning:latest

# 拉取 MySQL 5.7 镜像
docker pull mysql:5.7

2. 创建数据目录

bash 复制代码
# 创建 Yearning 和 MySQL 数据目录
mkdir -p /data/{yearning,mysql}

# 赋予目录读写权限
chmod 777 /data/{yearning,mysql}

3. 编写 docker-compose.yaml

bash 复制代码
vi /data/yearning/docker-compose.yaml

将以下内容写入文件:

yaml 复制代码
services:
    yearning:
        image: yeelabs/yearning:latest
        container_name: yearning-web
        environment:
           MYSQL_USER: yearning
           MYSQL_PASSWORD: Admin@168
           MYSQL_ADDR: mysql:3306
           MYSQL_DB: yearning
           SECRET_KEY: dbcjqheupqjsuwsm
           IS_DOCKER: is_docker
        ports:
           - 8000:8000
        command: /bin/bash -c "./Yearning install && ./Yearning run"
        depends_on:
           - mysql
        restart: always
        healthcheck:
          test: ["CMD", "curl", "-f", "http://localhost:8000"]
          interval: 30s
          timeout: 10s
          retries: 3

    mysql:
        image: mysql:5.7
        container_name: yearning-mysql
        environment:
           MYSQL_ROOT_PASSWORD: Admin@168
           MYSQL_DATABASE: yearning
           MYSQL_USER: yearning
           MYSQL_PASSWORD: Admin@168
        command:
           - --character-set-server=utf8mb4
           - --collation-server=utf8mb4_general_ci
           - --wait_timeout=28800
        volumes:
           - /data/mysql/data:/var/lib/mysql
        restart: always

注意 :生产环境请务必修改默认密码(Admin@168)和 SECRET_KEY。

4. 启动容器

bash 复制代码
# 进入 docker-compose.yaml 所在目录
cd /data/yearning/

# 启动所有服务
docker-compose up -d

# 查看容器运行状态
docker-compose ps

预期输出如下:

复制代码
NAME                IMAGE                     STATUS
yearning-web        yeelabs/yearning:latest   Up
yearning-mysql      mysql:5.7                 Up

5. 查看启动日志

bash 复制代码
# 查看 Yearning 容器日志
docker logs -f yearning-web

当日志中出现类似以下内容时,表示启动成功:

复制代码
Yearning server started successfully
Listening on http://0.0.0.0:8000

6. 访问 Yearning 服务

浏览器访问:http://<服务器IP>:8000/#/login

默认管理员账号:

  • 用户名:admin
  • 密码:Yearning_admin

首次登录后系统会提示修改密码,请按照指引完成初始配置。

三、常用管理命令

bash 复制代码
# 停止服务
docker-compose down

# 重启服务
docker-compose restart

# 查看容器日志
docker logs -f yearning-web

# 进入容器内部
docker exec -it yearning-web /bin/bash

四、注意事项

  1. 密码安全 :部署前务必修改 docker-compose.yaml 中的数据库密码和 SECRET_KEY
  2. 数据持久化 :MySQL 数据已挂载到 /data/mysql/data,请定期备份该目录
  3. 端口冲突:确保 8000 端口未被其他服务占用
  4. 资源要求:建议服务器至少 2C4G 配置
  5. 首次部署 :command 行包含 install 操作,首次部署后如需重启,可注释该行避免重复安装

五、结语

通过 Docker Compose 的方式,我们仅需几分钟即可完成 Yearning SQL 审核平台的部署。Yearning 提供了完整的 SQL 审核流程,支持工单管理、SQL 语法检查、权限控制等功能,是 DBA 和开发团队的得力助手。

如需了解更多高级配置(如 LDAP 接入、钉钉/企业微信通知等),可参考 Yearning 官方文档。

相关推荐
来自于狂人6 小时前
GitHub 开源趋势日报 | 2026年10月21日
开源·github
冬奇Lab8 小时前
开源项目第244期:高性价比人生指南 —— 767 条建议,每条写明成本、收益、证据等级和原始出处
开源·资讯
Imagination官方博客11 小时前
从开源驱动到完整软件栈:Imagination 助力 RISC-V 图形生态发展
开源·risc-v
袋鼠云数栈11 小时前
让 SQL 解析不再重复造轮子:SqlParserX 正式开源
数据库·人工智能·sql·开源·数据治理
程序员老赵12 小时前
Docker 部署 Hue:轻松搭建数据库与数据仓库 SQL 查询平台
sql·docker·开源
樊小肆12 小时前
睡前丢给它三张工单,早上收代码和账单:我开源了一个 DeepSeek 驱动的 AI 编码助手
开源·ai编程·deepseek
SelectDB技术团队13 小时前
Snowflake 的开源替代怎么选:能力对照、三条部署路径与迁移执行
大数据·数据库·云原生·开源·snowflake·apache doris
wflynn14 小时前
GitHub 日榜趋势速报 | 2026-10-21
开源·github
梦影_14 小时前
MySQL进阶教程(一)—— 储存过程与触发器(上)
开发语言·数据库·后端·sql·mysql·中间件
葫三生15 小时前
关于三生原理系列被技术开发社区批量收录或引发策展边界讨论的一种思考
大数据·人工智能·深度学习·算法·机器学习·数据挖掘·开源