[开源]一款基于Go语言开发的Web版运维资源管理系统,简版的CMDB

科技一飞开源 2024-04-25 21:09:22

一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!

一、开源项目简介

GO-OAM是基于Go语言开发的Web版运维资源管理系统,算是简版的CMDB,将各种难记的账号、密码、主机、文档、应用等资源管理起来,以项目方式整合。

二、开源协议

使用GPL-2.0开源协议

三、界面展示系统截图

四、功能概述

GO-OAM是基于Go语言开发的web版运维资源管理系统,算是简版的CMDB,将各种难记的账号、密码、主机、文档、应用等资源管理起来,以项目方式整合。

通过自定义账号类型账号可以增加动态属性,默认初始了微信/支付宝商户账号、微信公众号、小程序、数据库账号等类型。

五、技术选型技术选型:后端:golang, beego前端:jquery, easyui,tui-editor数据库:mysql 或 sqlite安装部署可选择下载编译好的安装包或自己在编译打包(需要go语言开发环境)打包命令

项目根目录下提供了一个打包脚本: build.bat, 脚本默认目标平台是linux. 如要打包windows加参数w,即: build.bat w

如果熟悉beego也可自定义打包命令,各平台打包命令如下(命令参数请参考beego):

linux环境:

bee pack -exp=screenshot:logs:.vscode:.git:README.md:tests -a=oam -be GOOS=linux -be GOARCH=amd64

编译后文件在源码要目录下:oam.tar.gz

windows环境:

bee pack -f=zip -exp=screenshot:logs:.vscode:.git:README.md:tests -a=oam -be GOOS=windows -be GOARCH=amd64

编译后文件在源码根目录下: oam.zip

解压安装包,创建数据库

数据库文件在data目录下,oam.db为sqlite文件, oam_mysql.sql为mysql脚本

修改配置

配置文件conf/app.conf主要配置项说明:

httpport = 8848 # 端口号runmode = dev # 当前使用环境,对应下面的[dev/prod]章节不同...dbtype=mysql # 使用的数据库类型:mysql 或sqllitedbname = "oam" # 数据库名称(sqlite是文件名)...#下面是不同环境的配置变量,主要是数据库信息,其他可以不动[dev]debug = "true"dbuser = "user"dbpasswd = "123"dbaddr = "10.18.203.94"store_path=[prod]debug = "false"dbuser = "user"dbpasswd = "123"dbaddr = "10.18.203.32"store_path=Linux下启动

需要给oam文件执行权限: chmod +x oam

启动命令: ./oam

后台运行: nohup ./oam >>nohup.out 2>&1 &

启动后浏览器打开http://localhost:8848, 默认登录用户:root 密码:2022@00

密钥问题

系统有两种密钥RSA和AES, RSA密钥文件放在conf目录,pri.pem为私钥文件,pub.pem为公钥文件,安全起见应自己生成密钥文件然后替换

AES密钥会在系统运行第一次自动生成

密钥生成后不修改,否则会导致已加密的数据解密失败

sqlite3使用问题

使用sqlite数据库时,由于使用的是go-sqlite3驱动,该驱动使用了gcc需要开启CGO_ENABLED才能编译成功,如下:

go env -w CGO_ENABLED=1

六、源码地址

访问一飞开源:https://code.exmay.com/

0 阅读:0

科技一飞开源

简介:感谢大家的关注