mayfly-go:web 版 linux、数据库等管理平台

mayfly-go是web 版 linux(终端终端回放 文件 脚本 进程 计划任务)、数据库(mysql postgres oracle sqlserver 达梦 高斯 sqlite)、redis(单机 哨兵 集群)、mongo 等集工单流程审批于一体的统一管理操作平台

部署

具体部署见:部署 · 语雀

安装包部署

Ubuntu的apt包里没有,所以要手工下载安装。

前往下载地址下载对应版本的安装包:mayfly-go 发行版 - Gitee.com

解压,然后执行startup.sh即可:

bash 复制代码
wget https://gitee.com/dromara/mayfly-go/releases/download/v1.7.4/mayfly-go-linux-amd64.zip
unzip mayfly-go-linux-amd64.zip 
cd mayfly-go-linux-amd64/
# 修改配置文件
cp config.yml.example config.yml
# 启动mayfly-go
sh startup.sh 
# 停止mayfly-go
sh shutdown.sh 

现在的新版本直接就有config.yml文件了,不用再执行cp config.yml.example config.yml

数据库mysql需要配置一下,或者不用mysql,直接使用sqlite 。编辑config.yml文件:

bash 复制代码
# 若存在mysql配置,优先使用mysql
#mysql:
# host: mysql:3306
# username: root
# password: 111049
# db-name: mayfly-go
# config: charset=utf8&loc=Local&parseTime=true
# max-idle-conns: 5
sqlite:
  path: ./mayfly-go.sqlite
  max-idle-conns: 5

使用docker部署

bash 复制代码
docker pull ccr.ccs.tencentyun.com/mayfly/mayfly-go:v1.7.4

docker-compose部署

执行

bash 复制代码
docker-compose up 

使用

启动后系统会起来18888端口服务,直接登录18888端口即可。若有报错,比如mysql连不上等,需要排查问题。

配置端口转发

配置nginx端口转发(不需要)

服务启动后,只绑定了本地端口,所以网络上的其它及其是无法连上的(这里理解错误,其实是全网侦听的)。这时候需要配置端口转发(其实不需要)。这里以nginx配置为例:

bash 复制代码
upstream mayfly-go {   
    server [2409:8a3c:40c0:5b08:a00:27ff:fee8:e484]:18888;
}
server {
    keepalive_requests 120; #单连接请求上限次数。
    listen       80;   #监听端口
    server_name  xxx.net;   #监听地址 
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade $http_upgrade;   #需要配置支持websocket
    proxy_set_header Connection 'upgrade';    #需要配置支持websocket
    
    location  / {       #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
        proxy_pass  http://mayfly-go;  #请求转向mayfly-go 定义的服务器列表    
    } 
}

配置vagrant端口转发

因为采用的是vagrant配置VirtualBox虚拟机,所以可以在vagrant的配置里,设置端口转发

bash 复制代码
  config.vm.network "forwarded_port", guest: 18888, host: 18888,
    auto_correct: true

登录

用户名是admin

口令是admin123.

费了好大劲才登上来:

但是没找到啥能配置或管理的地方,也许是因为这台机器太新了,没啥可管理的。

总结:使用感受

mayfly-go的目的是减轻管理员的工作量,提高工作效率。整个文档相对来说,比较详细。但是一些配置细节需要有相关经验才行。

反正我是没找到那些常规配置的地方.....

调试

执行报错mysql连接失败

bash 复制代码
024-03-05 12:40:31.330 [ERROR] [mayfly-go/pkg/starter.initMysql (gorm.go:43)] :
 连接mysql失败! [dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving]
panic: 连接mysql失败! [dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving]

因为测试的机器没有开3306端口,而是采用进行通信的方法,所以先去掉config.yml里面的mysql配置,直接使用sqlite测试。

远程无法连接18888端口

发现服务只起了ipv6的18888端口,没有起ipv4的。但是奇怪的是本机是可以连上的,当然连上之后可以看到是跟本地的ipv4地址的18888端口通信的。真奇怪

原来起了ipv6的,就有ipv4的。跟下面问题一样

看到只有ipv6端口侦听

tcp6 0 0 :::18888 :::* LISTEN

原来有这个ipv6的,ipv4端口也侦听的

没有密码登不上去

后来在issue里面找到,用户名admin,密码admin123. 注意是9个字母,最后一个字母是"."

名词解释:Redis

Redis是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。

连mysql报错error failed to initialize database, got error dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving

error failed to initialize database, got error dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving

2025-09-02 04:14:20.747 ERROR mayfly-go/pkg/starter.initMysql (gorm.go:43) : 连接mysql失败! dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving

panic: 连接mysql失败! dial tcp: lookup mysql on 127.0.0.53:53: server misbehaving

写域名解析在/etc/hosts文件中:

bash 复制代码
# add for mysql 
127.0.0.1 mysql

搞定

报错permission denied while trying to connect to the Docker daemon socket

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%!F(MISSING)var%!F(MISSING)run%!F(MISSING)docker.sock/v1.51/info": dial unix /var/run/docker.sock: connect: permission denied

这个错误表明当前用户没有权限访问Docker守护进程的Unix套接字文件(/var/run/docker.sock)

估计是因为没开docker服务。

相关推荐
乌恩大侠1 小时前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
tangwangbi1 小时前
Linux 系统配置文件:/etc/profile、~/.bashrc 和 ~/.bash_profile 三者之间的区别与作用
linux·运维·bash
蜀道山老天师1 小时前
Shell Bash变量与运算符(含条件测试与流程控制)
linux·运维·bash
Mr.朱鹏1 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
摇滚侠1 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
草邦设计开发团队_媒体资源平台1 小时前
GEO 信源整合一键发布软文:从内容生产到流量获客的自动化实践
运维·人工智能·自动化
zhou lily1 小时前
非标自动化管理系统ERP如何选?2026年10大ERP软件对比分析
运维·自动化
qiuhaipeng11 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库
mengge.cloud2 小时前
存储技术基础小白教程
linux·运维·服务器·wpf·存储
云贝贝贝2 小时前
腾讯云 TDSQL(MySQL 版)运维高频 6 坑:代理路由、读写分离、分片键、监控、PITR
运维·mysql·腾讯云