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