跳到主要内容

安装指南

本指南将帮助你安装 WooCoo 及其相关工具。

系统要求

Go 版本

WooCoo 需要 Go 1.24 或更高版本。

使用 gvm 或从 Go 官网 下载最新版本:

# 使用 gvm 安装
gvm install go1.24
gvm use go1.24 --default

验证安装

go version
# 输出: go version go1.24.x linux/amd64

环境配置

Go 模块代理(中国大陆用户)

# 设置 Go 模块代理
go env -w GOPROXY=https://goproxy.cn,direct

# 启用 Go 模块
go env -w GO111MODULE=on

安装 WooCoo

1. 创建项目

# 创建项目目录
mkdir myapp && cd myapp

# 初始化 Go 模块
go mod init myapp

# 安装 WooCoo
go get github.com/tsingsun/woocoo

2. 验证安装

创建一个简单的测试文件 main.go

package main

import (
"fmt"
"github.com/tsingsun/woocoo"
)

func main() {
app := woocoo.New()
fmt.Println("WooCoo 版本:", app.Version())
}

运行测试:

go run main.go

安装 WoCo CLI 工具

WoCo(音:我可)是 WooCoo 的命令行工具,用于代码生成和项目初始化。

# 安装 CLI
go install github.com/tsingsun/woocoo/cmd/woco@latest

# 验证安装
woco -v
提示

安装后,确保 $GOPATH/bin%GOPATH%\bin 在你的 PATH 环境变量中。

使用 CLI 快速开始

# 创建包含完整功能的项目
woco init -p myapp -m web,grpc,cache,otel -t ./myapp

# 进入项目
cd myapp

安装 gRPC 工具(可选)

如果你需要开发 gRPC 微服务,需要安装 Protocol Buffers 编译器。

安装 protoc

brew install protobuf

验证安装:

protoc --version
# 输出: libprotoc 25.1

安装 Go gRPC 插件

# 安装 protoc-gen-go
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest

# 安装 protoc-gen-go-grpc
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest

安装可选依赖

根据你的项目需求,可能需要安装以下服务:

服务用途安装指南
MySQL关系型数据库MySQL 下载
Redis缓存和会话Redis 下载
etcd服务注册与发现etcd 安装
Polaris服务治理Polaris 安装

使用 Docker 快速安装

# Redis
docker run -d -p 6379:6379 --name redis redis:latest

# MySQL
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root mysql:8.0

# etcd
docker run -d -p 2379:2379 -p 2380:2380 --name etcd quay.io/coreos/etcd:latest

推荐的 ORM 工具

WooCoo 推荐使用 Ent ORM 作为数据库 ORM 工具:

# 安装 Ent CLI
go install entgo.io/ent/cmd/ent@latest

# 验证安装
ent --version

Ent 提供了强大的代码生成和 gRPC 集成,与 WooCoo 完美配合。

下一步

安装完成后,前往 快速开始 创建你的第一个 WooCoo 应用!

常见问题

Q: 如何更新 WooCoo 到最新版本?

go get -u github.com/tsingsun/woocoo@latest
go mod tidy

Q: 如何更新 WoCo CLI?

go install github.com/tsingsun/woocoo/cmd/woco@latest

Q: 安装时遇到网络问题?

确保已配置 Go 模块代理:

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