Veops/CMDB 项目本地开发环境搭建指南

Veops/CMDB 项目本地开发环境搭建指南

cmdb CMDB: configuration and management of IT resources | 运维的权威数据库 cmdb 项目地址: https://gitcode.com/gh_mirrors/cm/cmdb

环境准备

在开始搭建 Veops/CMDB 项目之前,我们需要确保本地开发环境满足以下要求:

系统依赖

  1. 数据库服务

    • MySQL:用于存储CMDB的核心数据
    • Redis:用于缓存和异步任务队列
  2. Python环境

    • 版本要求:3.8 ≤ Python ≤ 3.11
    • 推荐使用虚拟环境管理工具(如pipenv)
  3. 前端环境

    • Node.js 14.x版本
    • Yarn包管理工具

数据库服务部署

使用Docker快速部署

对于本地开发环境,推荐使用Docker容器化部署数据库服务,这样可以避免污染本地环境。

MySQL部署
# 创建数据持久化目录
mkdir ~/cmdb_db

# 启动MySQL容器
docker run -d -p 3306:3306 --name mysql-cmdb \
  -e MYSQL_ROOT_PASSWORD=Root_321 \
  -v ~/cmdb_db:/var/lib/mysql \
  mysql
Redis部署
# 启动Redis容器
docker run -d --name redis -p 6379:6379 redis

MySQL配置调整

CMDB项目对MySQL的SQL模式有特定要求,需要执行以下配置:

  1. 进入MySQL容器:
docker exec -it mysql-cmdb bash
mysql -uroot -pRoot_321
  1. 设置SQL模式:
SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
SET SESSION sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
  1. 创建CMDB专用数据库:
CREATE DATABASE cmdb;

项目代码获取与配置

  1. 获取项目源代码后,进入项目目录

  2. 复制配置文件模板:

cp cmdb-api/settings.example.py cmdb-api/settings.py
  1. 编辑cmdb-api/settings.py文件,配置数据库连接信息,确保与之前部署的MySQL服务配置一致。

依赖安装

后端依赖安装

进入cmdb-api目录,使用pipenv安装Python依赖:

cd cmdb-api && pipenv run pipenv install && cd ..

前端依赖安装

  1. 确保Node.js版本为14.x(推荐使用nvm管理Node版本)
  2. 进入cmdb-ui目录,使用yarn安装前端依赖:
cd cmdb-ui && yarn install && cd ..

数据库初始化

有三种方式初始化数据库:

  1. 导入预置SQL文件

    • docs/cmdb.sql导入数据库,会创建默认用户(demo/123456)
  2. 使用迁移工具初始化

    cd cmdb-api
    pipenv run flask db-setup
    pipenv run flask common-check-new-columns
    pipenv run flask cmdb-init-cache
    

服务启动

后端服务启动

cd cmdb-api
pipenv run flask run -h 0.0.0.0

前端服务启动

cd cmdb-ui
yarn run serve

异步任务Worker启动

CMDB使用Celery处理异步任务,需要启动两个worker:

  1. CMDB异步任务worker:
cd cmdb-api
pipenv run celery -A celery_worker.celery worker -E -Q one_cmdb_async --autoscale=5,2 --logfile=one_cmdb_async.log -D
  1. ACL异步任务worker:
pipenv run celery -A celery_worker.celery worker -E -Q acl_async --autoscale=2,1 --logfile=one_acl_async.log -D

访问系统

  1. 本地访问:浏览器打开http://127.0.0.1:8000
  2. 远程访问:需要修改cmdb-ui/.env文件中的VUE_APP_API_BASE_URL,将其指向后端服务的实际IP地址

常见问题解决

  1. Python版本问题

    • 确保使用3.8-3.11之间的Python版本
    • 推荐使用pyenv管理多Python版本
  2. MySQL连接问题

    • 检查settings.py中的数据库配置
    • 确认MySQL服务已启动且端口开放
  3. 前端编译问题

    • 确保Node.js版本为14.x
    • 清除node_modules后重新安装依赖

通过以上步骤,您应该能够成功在本地搭建Veops/CMDB项目的开发环境。如果在部署过程中遇到问题,可以检查各服务的日志输出以获取更多调试信息。

cmdb CMDB: configuration and management of IT resources | 运维的权威数据库 cmdb 项目地址: https://gitcode.com/gh_mirrors/cm/cmdb

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滕骅照Fitzgerald

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值