Files
easygoadmin-wiki/EasyGoAdmin_GoFrame_EleVue/zh/quickstart/environment.md
T
2026-10-20 21:19:44 +08:00

3.2 KiB
Raw Blame History

2.1 开发环境准备

:::tip 概述 本章指导您从零搭建开发环境,包括 Go、Node.js/pnpm、MySQL、Redis 的安装与配置。项目后端支持 MySQL、PostgreSQL、SQL Server、Oracle、SQLite 五种数据库,默认使用 MySQL。 :::

安装流程总览

graph TD
    A[开始] --> B[安装 Go 1.27+]
    B --> C[安装 MySQL 8.x]
    C --> D[安装 Redis]
    D --> E[安装 Node.js 18+ / pnpm]
    E --> F[安装 GoFrame CLI gf]
    F --> G[配置开发工具]
    G --> H[环境就绪 ✅]

    style A fill:#e8f5e9
    style H fill:#e8f5e9
    style C fill:#fff3e0

Go 安装

:::warning 版本要求 项目 go.mod 声明 go 1.27.2,请安装 Go 1.27.2 及以上版本,过低版本会直接编译失败。 :::

Windows

从 https://go.dev/dl/ 下载 go1.27.2.windows-amd64.msi 默认安装。验证:

go version    # go version go1.27.2 windows/amd64

建议配置国内代理(下载依赖加速):

go env -w GOPROXY=https://goproxy.cn,direct

GoFrame CLI(可选但推荐)

go install github.com/gogf/gf/cmd/gf/v2@latest
gf -v

gf 仅在表结构变更后刷新 dao 时使用(gf gen dao -c hack/config.yaml),日常开发不依赖。

MySQL 安装

推荐 MySQL 8.x,安装后创建数据库(注意库名含点):

CREATE DATABASE `easygoadmin.goframe.elevue` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

默认连接账号 root/root@127.0.0.1:3306,如不同请同步修改 manifest/config/config.yaml 的 database.default.link。

::: warning 库名注意 库名 easygoadmin.goframe.elevue 含点号,DDL 语句中引用库名/表名时 MySQL 需要反引号包裹。MySQL 定稿导入脚本为 document/mysql/easygoadmin.goframe.elevue.sql(其余方言见 document/{postgresql,sqlserver,oracle,sqlite}/)。 :::

Redis 安装

Redis 用于缓存、JWT 黑名单、验证码、在线用户、限流计数、任务执行锁。默认连接 127.0.0.1:6379,密码 123456(见 config.yaml redis.default.pass)。

# Windows 可使用 Memurai / WSL / Redis for Windows
# 验证
redis-cli -a 123456 ping    # PONG

::: tip 降级说明 Redis 不可用时系统自动降级为进程内存缓存(utility/cache),服务可正常启动,但限流计数、任务锁、在线用户、黑名单等多实例共享能力退化为单机语义。生产环境 Redis 必须可用。 :::

Node.js / pnpm 安装

前端要求 Node.js 18+,推荐 pnpm 包管理:

# 安装 Node.js(https://nodejs.org LTS 版)
node -v    # v18+

# 安装 pnpm
npm install -g pnpm
pnpm -v

开发工具推荐

工具 用途
GoLand / VS Code + Go 插件 后端开发
VS Code + Volar 插件 前端开发(关闭 Vetur)
Navicat / DBeaver 数据库管理
RedisInsight / Another Redis Desktop Redis 管理
Apifox / Postman 接口调试(也可直接用内置 /swagger)

环境检查清单

  • go version 输出 1.27.2+
  • MySQL 已建库 easygoadmin.goframe.elevue(utf8mb4)
  • redis-cli ping 返回 PONG
  • node -v 输出 18+,pnpm -v 正常
  • manifest/config/config.yaml 中数据库/Redis 连接信息与实际一致