本文已参加「新人创造礼」活动,一起敞开创造之路。
前语
平常工作过程中,关于长途衔接Linux,我们通常会运用SSH东西如:putty、xshell等,关于mysql、mongodb数据库办理通常会运用Navicat、Dbeaver这类东西,redis则有RedisDesktopManager,部分软件或许还需求破解才干运用。每次都要装置来装置去、装置多个软件,这样不免有些繁琐。那么有没有一款东西能够提供一站式办理呢,答案是有的。mayfly-go便是最近比较火的,一款开源的web版linux、mysql、redis、mongo统一办理操作渠道。
一、关于mayfly-go
1.简介
web版linux、mysql、redis、mongo统一办理操作渠道。
项目地址:gitee.com/objs/mayfly…
项目文档:objs.gitee.io/mayfly-go-d…
下载地址:gitee.com/objs/mayfly…
开发言语与首要框架
- 前端:typescript、vue3、element-plus
- 后端:golang、gin、gorm
2.功能介绍
- linux: ssh终端(终端操作记载回放),文件检查(可根据常见后缀名高亮显示关键词等)、修改、上传、下载、删去等,脚本办理履行,进程操作,运转状况检查等(可当做堡垒机运用)。
- dbms(现在支持mysql、postgres): 可视化数据增修改查,sql句子提示,表信息、索引信息、建表句子检查,建表等(类似mini版navicat)。
- redis(单机、岗兵、集群): 增修改查redis数据,redis基本信息检查,如版别,内存,cpu等运用情况、集群信息节点检查。
- mongo: 增修改查mongo文档数据,数据库、调集状况检查,新建删去调集等。
- 支持ssh tunnel拜访: linux机器、数据库、redis、mongo都支持ssh隧道拜访操作。
- 体系办理: 同时具有完善的账号、人物、资源权限控制等,也可基于该项目进行二次开发作为体系后台体系。
二、装置
1.下载解压
wget https://gitee.com/objs/mayfly-go/releases/download/v1.2.12/mayfly-go-linux-amd64.zip # 在线下载
unzip mayfly-go-linux-amd64.zip # 解压
mv mayfly-go-linux-amd64 mayfly # 改名
解压后会得到以下文件
readme.txt文件中提示了布置办法:
相关配置文件:
后端:
config.yml: 服务端口,mysql,aeskey(16 24 32位),jwtkey等信息在此配置即可。
建议务必将aes.key(资源暗码加密如机器、数据库、redis等暗码)与jwt.key(jwt秘钥)两信息运用随机字符串替换。
服务发动&重启:./startup.sh
服务封闭:./shutdown.sh
直接经过 host:ip即可拜访项目
初始账号 admin/admin123.
2.配置数据库
1)创立数据库
布置mayfly-go的机器上需求提前装置准备好mysql数据库服务,并创立mayfly-go所运用的数据库
# 登录数据库
mysql --host 192.168.1.123 --port 3307 -uroot -p123456
# 在mysql命令行创立mayfly数据库
create database mayfly character set utf8 collate utf8_general_ci;
2)导入mayfly-go.sql
# 因为我的是用docker搭建的mysql容器,所以需求把要履行的文件从宿主机拷贝到容器内
docker cp mayfly-go.sql mysql:/home/
# mysql命令行履行mayfly-go.sql文件
source /home/mayfly-go.sql
检查mayfly数据,此时已创立多张相关表:
3.修改配置文件config.yml
server:
# debug release test
model: release
port: 8888
cors: true
tls:
enable: false
key-file: ./default.key
cert-file: ./default.pem
# 机器终端操作回放文件存储路径
machine-rec-path: ./rec
jwt:
# jwt key,不设置默许运用随机字符串
key:
# 过期时刻单位分钟
expire-time: 1440
# 资源暗码aes加密key
aes:
key: 1111111111111111
mysql:
# 改为你自己的ip地址和端口号
host: 192.168.1.123:3307
# 改为你自己的用户名和暗码
username: root
password: xxxx
db-name: mayfly
config: charset=utf8&loc=Local&parseTime=true
max-idle-conns: 5
log:
# 日志等级, trace, debug, info, warn, error, fatal
level: info
# file:
# path: ./
# name: mayfly.log
4.发动mayfly-go
./startup.sh
检查nohup.out文件能够看出mayfly-go现已发动成功并衔接到mysql数据库
假如前台依然拜访不了,或许是防火墙8888端口未开放,铺开端口即可:
firewall-cmd --zone=public --permanent --add-port=8888/tcp
firewall-cmd --reload
5.拜访前台页面
http://192.168.1.123:8888,初始账号 admin/admin123.(留意后面有个点)
三、运用
1.前置准备工作
创立账号
【增加账号】 :体系办理-账号办理-增加-输入用户名-承认
【设置账号暗码】 :体系办理-账号办理-勾选账号-修改-输入暗码-承认
【分配用户人物】 :体系办理-账号办理-勾选账号-人物分配-勾选人物-承认
增加项目
【增加项目】 :项目办理-项目列表-增加-输入项目名及描绘-承认
【项目增加成员】 :项目办理-项目列表-勾选项目-成员办理-增加-搜索成员-挑选成员-承认
只要项目增加成员,该成员账号在登录后增加机器时才干选到该项目,增加成功后如下所示:
【增加环境】 :项目办理-项目列表-勾选项目-环境办理-增加环境-输入环境名及描绘-承认(后面增加数据库时会用到)
增加机器
机器办理-机器列表-增加-输入机器相关信息-承认
机器列表
2.服务器操作
1)服务器状况监控
点击机器列表页ip:port列的机器ip即可检查该机器的体系资源监控
2)SSH终端操作
点击机器列表页各个机器的“终端”即可进行终端命令行界面
3)文件操作
【增加目录或文件】 :机器办理-机器列表-点击指定机器的“文件”-增加-输入称号、挑选类型、路径-承认
【检查目录】:例如上述增加了服务器的/home目录,检查该目录
【检查文件详情】 :挑选任一文件,支持检查、下载、删去,例如检查某个文件:
2.数据库操作
1)MySQL
【增加数据库】 :DBMS-数据库办理-增加-填写数据库相关信息-承认
增加数据库成功后,即可在数据库列表中,找到对应的数据库,点击检查-数据库称号可检查数据表信息:
【数据库操作】 :DBMS-数据库操作,顺次挑选项目、环境、资源、数据库、表,即可进行相关操作
2)Redis
【新增redis】 :Redis-redis办理-增加-填写相关信息-承认,暗码没设置能够不填,假如敞开防火墙需求铺开6379端口。
【数据操作】: Redis-数据操作,顺次挑选项目、env、redis、库,例如我想增加一个称号为age的key:
检查增加的key:
3)MongoDB
【衔接MongoDB】 :Mongo-Mongo办理-增加-填写相关信息-承认,需留意uri格局:
- 假如没有用户名和暗码直接填写mongodb://ip:端口号,如:mongodb://192.168.1.123:27017 ;
- 假如有用户名和暗码,则格局为:mongodb://用户名:暗码@ip:端口号,例如mongodb://root:123456@192.168.1.123:27017
【数据操作】:Mongo-Mongo操作,顺次挑选项目、env、实例、库、表,例如:我想往test111数据库的user表中刺进一条数据,内容如下:
检查刺进后的数据:
以上便是mayfly-go渠道的搭建布置过程,以及简略运用介绍。