Docker 安装

Docker 安装自带独立的 MySQL 8 容器,不影响服务器上已有的任何数据库。全程交互式问答,不需要浏览器向导。

适用场景

  • 服务器上有老项目,担心安装新软件影响它们
  • 服务器 MySQL 版本低于 8.0、是 MariaDB,或无法升级

安装步骤

  1. 确认 Docker 环境

    需要 Docker 20.10+(含 compose 插件)。未安装的话,在服务器终端执行:

    bash
    curl -fsSL https://get.docker.com | bash && systemctl enable --now docker
  2. 进入安装包目录,运行安装脚本
    bash
    cd /www/wwwroot/go_fan-v1.1.54-linux-amd64   # 以实际目录为准
    chmod +x install.sh go_fan
    ./install.sh --docker

    宿主机端口被占时脚本自动改用空闲端口并明确告知;也可用 --port 指定。

  3. 按提示回答几个问题

    脚本会依次询问:授权码(可留空跳过)、对外端口、后台管理员密码。全程每一步都有进度与结果输出——等待 MySQL 就绪每 10 秒打一行进度,任何一步失败都会打印明确的失败原因与排查命令,可直接截图反馈给客服。

  4. 自动完成

    启动顺序经过专门设计:先只启动 MySQL 容器 → 跑数据库迁移 → 创建管理员 → 最后才启动 go_fan,避免应用连上空库反复崩溃重启。管理员账号用一次性容器生成,不依赖应用容器状态。

  5. 装完验证

    浏览器打开 http://服务器IP:端口/admin(端口以安装时为准),用 admin + 你设置的密码登录;打开后台「系统自检」确认数据库、授权、端口全部正常。

i后台密码可在会员中心找回

安装时会写入管理员凭证种子(0600 权限),程序首次成功心跳后上报授权中台——之后可在 188mi 会员中心「我的授权」通过邮箱验证找回后台密码,不用登录服务器。

设计说明

为什么容器里没有二进制

go_fan 的运行镜像不含程序本体——安装目录整体挂载进容器。远程更新替换宿主机上的二进制后,容器退出会由 restart: unless-stopped 自动拉起,即跑新版,无需重新构建镜像。

可选:启用 Redis

  1. 编辑 docker-compose.yml,取消 redis 段的注释;
  2. config.yamlredis.host 改为 redis;
  3. 执行 docker compose up -d 重建。

常用运维命令

bash
docker compose ps                     # 查看容器状态
docker compose logs -f go_fan         # 跟踪程序日志
docker compose restart go_fan         # 重启(更新后)

卸载

bash
./install.sh --uninstall              # 停止容器,MySQL 数据卷是否删除会二次确认
./install.sh --uninstall --purge      # 彻底清理(连程序目录一起删,用于重装)

卸载流程很稳:即使目录缺少 .env 或某一步清理失败也不会中断——打印原因与手动排查命令后,继续完成其余清理。

本页没有解决你的问题?前往 反馈建议 提交,或加入 QQ 交流群 获取帮助。