docker安装open-cmdb

2024-01-07 18:32
文章标签 安装 docker open cmdb

本文主要是介绍docker安装open-cmdb,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

open-cmdb的代码地址
https://github.com/open-cmdb/cmdb

将下述代码保存到 install_cmdb.py 并执行 sudo python3 install_cmdb.py 即可一键安装。

# -*- coding: utf-8 -*-
import os
import subprocess
import argparse
import timedef base(cmd):if subprocess.call(cmd, shell=True):raise Exception("{} 执行失败".format(cmd))def install_docker():base("sudo yum install -y yum-utils device-mapper-persistent-data lvm2")base("sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo")base("sudo yum makecache fast")base("sudo yum -y install docker-ce")if(not os.path.exists("/etc/docker")):base("mkdir -p /etc/docker")with open("/etc/docker/daemon.json", "w") as f:f.write('{\n    "registry-mirrors": ["https://9f4w4icn.mirror.aliyuncs.com"] \n}')base("sudo systemctl daemon-reload")base("sudo systemctl start docker")def create_dir():if (not os.path.exists("/var/cmdb/db")):base("sudo mkdir -p /var/cmdb/db")if (not os.path.exists("/var/cmdb/es")):base("sudo mkdir -p /var/cmdb/es")def run_db_container():base("sudo docker run --name cmdb-db -d -e MYSQL_ROOT_PASSWORD=cmdbcmdb -v /var/cmdb/db:/var/lib/mysql mysql:5.7.21")def run_es_container():base("sudo docker run --name cmdb-es -d -v /var/cmdb/es:/usr/share/elasticsearch/data elasticsearch:5.6.8")def init_db():base("sudo docker run -it --rm --link cmdb-db -e ENV=PRO -e DB_HOST=cmdb-db -e DB_PORT=3306 -e DB_USERNAME=root -e DB_PASSWORD=cmdbcmdb -e DB_NAME=cmdb mingmingtang/cmdb init-db")def run_cmdb_container(site_url, email_host, email_port, email_username, email_password):base("sudo docker run -d --name cmdb --link cmdb-db --link cmdb-es -p 80:80 -e ENV=PRO -e SITE_URL={} -e DB_HOST=cmdb-db -e DB_PORT=3306 -e DB_USERNAME=root -e DB_PASSWORD=cmdbcmdb -e DB_NAME=cmdb -e ELASTICSEARCH_HOSTS=cmdb-es -e EMAIL_HOST={} -e EMAIL_PORT={} -e EMAIL_USERNAME={} -e EMAIL_PASSWORD={} mingmingtang/cmdb start".format(site_url, email_host, email_port, email_username, email_password))def input_para(help):value = ""while(not value):value = raw_input(help)return valueif __name__ == '__main__':if(os.geteuid() != 0):raise("请以root权限运行")site_url = input_para("请输入网站域名或IP(http://cmdb.xxx.com):")email_host = input_para("网站邮箱服务器(smtp.163.com):")email_port = input_para("邮箱服务器端口(25):")email_username = input_para("邮箱用户名(cmdb@163.com):")email_password = input_para("邮箱密码|独立授权码(P@ssw0rd):")print("开始安装docker")install_docker()print("开始创建目录")create_dir()print("开始运行mysql容器")run_db_container()print("开始运行elasticsearch容器")run_es_container()print("等待数据库启动完成(10s)")time.sleep(10)print("开始初始化数据库")init_db()print("开始运行cmdb")run_cmdb_container(site_url, email_host, email_port, email_username, email_password)print("完成!")

输入网站地址和邮箱信息开始安装
安装完成后执行
sudo docker ps
查看三个容器是否正常运行
在这里插入图片描述
访问输入的网站地址即可看到登陆页面(默认使用80端口)
在这里插入图片描述
使用命令
docker exec -it cmdb bash
cd /opt/cmdb && python manage.py createsuperuser
根据提示新增一个管理员账号
使用命令exit退出容器
之后使用设置的管理员账号登陆即可
在这里插入图片描述
默认是有一个admin的账号 但是未找到密码 开发者页面也未提供 不知道为什么
在这里插入图片描述
mysql、es文件都映射在/var/cmdb下
卸载只需清理生成的三个容器和清除该目录即可

这篇关于docker安装open-cmdb的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/580857

相关文章

ubuntu20.0.4系统中安装Anaconda的超详细图文教程

《ubuntu20.0.4系统中安装Anaconda的超详细图文教程》:本文主要介绍了在Ubuntu系统中如何下载和安装Anaconda,提供了两种方法,详细内容请阅读本文,希望能对你有所帮助... 本文介绍了在Ubuntu系统中如何下载和安装Anaconda。提供了两种方法,包括通过网页手动下载和使用wg

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

如何在Ubuntu上安装NVIDIA显卡驱动? Ubuntu安装英伟达显卡驱动教程

《如何在Ubuntu上安装NVIDIA显卡驱动?Ubuntu安装英伟达显卡驱动教程》Windows系统不同,Linux系统通常不会自动安装专有显卡驱动,今天我们就来看看Ubuntu系统安装英伟达显卡... 对于使用NVIDIA显卡的Ubuntu用户来说,正确安装显卡驱动是获得最佳图形性能的关键。与Windo

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

Maven如何手动安装依赖到本地仓库

《Maven如何手动安装依赖到本地仓库》:本文主要介绍Maven如何手动安装依赖到本地仓库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载依赖二、安装 JAR 文件到本地仓库三、验证安装四、在项目中使用该依赖1、注意事项2、额外提示总结一、下载依赖登

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解