安装 & 升级
Docker 一键快速构建
方法一
- 第一步: 先安装 Docker 环境, 以及Docker Compose(v2)
- 第二步: 拷贝项目
git clone https://github.com/veops/cmdb.git
- 第三步:进入主目录,执行:
docker compose up -d
本地开发环境搭建
环境和依赖
- 存储: mysql, redis
- python 版本:
3.8 <= python <= 3.11
安装
- 启动 mysql 服务, redis 服务
mysql一定要设置sql_mode, root进入mysql执行:
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';
- 创建数据库 cmdb
- 拉取代码
git clone https://github.com/veops/cmdb.git
cd cmdb
cp cmdb-api/settings.example.py cmdb-api/settings.py
设置cmdb-api/settings.py 里的 database
-
安装库
- 后端:
cd cmdb-api && pipenv run pipenv install && cd ..
- 前端:
cd cmdb-ui && yarn install && cd ..
- 后端:
-
可以将 docs/cmdb.sql 导入到数据库里,登录用户 和密码分别是:demo/123456
-
创建数据库表: 进入cmdb-api目录执行
pipenv run flask db-setup && pipenv run flask common-check-new-columns && pipenv run flask cmdb-init-cache
-
启动服务
-
后端: 进入cmdb-api目录执行
pipenv run flask run -h 0.0.0.0
-
前端: 进入cmdb-ui目录执行
yarn run serve
-
worker:
- 进入cmdb-api目录执行
pipenv run celery -A celery_worker.celery worker -E -Q one_cmdb_async --autoscale=5,2 --logfile=one_cmdb_async.log -D
- 进入cmdb-api目录执行
pipenv run celery -A celery_worker.celery worker -E -Q acl_async --autoscale=2,1 --logfile=one_acl_async.log -D
- 进入cmdb-api目录执行
-
浏览器打开: http://127.0.0.1:8000
- 如果是非本机访问, 要修改cmdb-ui/.env里VUE_APP_API_BASE_URL里的 IP 地址为后端服务的 ip 地址
-
Makefile 安装
Install by Makefile
- 启动 mysql 服务, redis 服务
- 创建数据库 cmdb
- 拉取代码
git clone https://github.com/veops/cmdb.git
cd cmdb
cp cmdb-api/settings.example.py cmdb-api/settings.py
设置 cmdb-api/settings.py 里的 database
- 顺序在 cmdb 目录下执行
- 环境:
make env
- 启动 API:
make api
- 启动 UI:
make ui
- 启动 worker:
make worker
- 环境:
纯净模式 安装
所谓的 纯净模式 即db里的数据完全是空的
如果已经安装过维易CMDB(本地或者docker-compose安装),想体验纯净模式的 安装(已经安装过的前提是当前数据不重要, 如果重要需备份)
- 先关服务
- 删掉DB,再重新建DB
- 清掉redis缓存
安装步骤
- 本地或者docker-compose按照前面安装即可,本地部署先不要启动服务。需要注意的是
docker-compose.yml
里cmdb-db下的volumes里的./docs/cmdb.sql:/docker-entrypoint-initdb.d/cmdb.sql
要注释掉 - 进入API环境,本地执行
pipenv shell
, 容器执行docker exec -it cmdb-api sh
- 执行如下命令:
flask db-setup
flask cmdb-init-acl
flask init-department
- 本地开发环境启动服务,一定要启动celery worker. docker部署此步骤忽略
- 同样在API环境里执行
flask add-user
去创建一个用户,需要注意的是Admin选项要填Y - 用上面创建的用户登录系统,然后从模板市场下载所需模板导入系统即可