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 官方文档

相关推荐
HYNuyoah44 分钟前
docker 安装win10系统
运维·docker·容器
起个名字总是说已存在1 小时前
github开源AI技能:Awesome DESIGN.md让页面设计无限可能
人工智能·开源·github
JAVA学习通3 小时前
励志从零打造LeetCode平台之C端竞赛列表
java·vscode·leetcode·docker·状态模式
SuperHeroWu73 小时前
【鸿蒙基础入门】概念理解和学习方法论说明
前端·学习·华为·开源·harmonyos·鸿蒙·移动端
qwfy4 小时前
瑞幸 UI 上 pub.dev 了 —— 22 个 Flutter 组件,与微信小程序版双端对齐
flutter·开源
以神为界5 小时前
数据库入门全指南:从基础概念到实操操作(含SQL+Navicat)
网络·数据库·sql·安全
Elastic 中国社区官方博客5 小时前
Elasticsearch:快速近似 ES|QL - 第二部分
大数据·数据库·sql·elasticsearch·搜索引擎·全文检索
七夜zippoe7 小时前
DolphinDB SQL查询:从简单到复杂
数据库·sql·mysql·查询·dolphindb
WAIT_TIME7 小时前
昇腾910B虚拟卡(vNPU)创建以及Docker挂载
docker·容器·昇腾·runtime·虚拟显卡·vnpu
大大杰哥7 小时前
Docker笔记
java·docker