# gonacli **Repository Path**: chenxxxxxxxx/gonacli ## Basic Information - **Project Name**: gonacli - **Description**: 一个用于管理 Nacos 配置中心、服务注册与命名空间的命令行工具 - **Primary Language**: Go - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-22 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # gonacli 一个用于管理 Nacos 配置中心、服务注册与命名空间的命令行工具。 ## 功能特性 - **配置管理**:查看、发布、删除、导入、导出配置 - **服务管理**:查看、创建、删除服务 - **实例管理**:注册、注销、更新服务实例 - **命名空间管理**:查看、创建、删除命名空间 ## 安装 ### 从源码编译 ```bash # 克隆仓库 git clone cd gonacli # 编译 go build -o gonacli.exe main.go # 或使用构建脚本 # Windows build.bat # Linux/Mac ./build.sh ``` ### 预编译二进制文件 从 [Releases](https://github.com/your-repo/gonacli/releases) 页面下载对应平台的可执行文件。 ## 快速开始 ### 1. 配置文件 在项目根目录创建 `nacos.yaml` 配置文件: ```yaml # Nacos 服务器地址 server: http://127.0.0.1:8848 # 认证信息 username: nacos password: nacos # 默认命名空间ID (可选,留空表示 public) namespace: "" ``` ### 2. 基本使用 ```bash # 查看帮助 gonacli --help # 查看版本 gonacli version # 列出所有配置 gonacli config list # 列出所有命名空间 gonacli ns list # 列出所有服务 gonacli service list ``` ## 命令参考 ### 全局参数 ```bash gonacli --config ./nacos.yaml # 指定配置文件路径 gonacli --server http://localhost:8848 # 指定 Nacos 服务器地址 gonacli --username nacos # 指定用户名 gonacli --password nacos # 指定密码 gonacli --namespace dev # 指定默认命名空间ID ``` ### 配置管理 ```bash # 列出配置 gonacli config list gonacli config list -n dev # 获取配置内容 gonacli config get -d application.yaml # 发布配置 gonacli config publish -d app.yaml -f ./app.yaml # 导出配置 gonacli config export -d app.yaml -f ./backup.yaml # 删除配置 gonacli config delete -d app.yaml # 查看历史版本 gonacli config history -d app.yaml ``` ### 命名空间管理 ```bash # 列出命名空间 gonacli ns list # 创建命名空间 gonacli ns create --id dev --name "开发环境" # 删除命名空间 gonacli ns delete --id dev ``` ### 服务管理 ```bash # 列出服务 gonacli service list gonacli service list -n dev # 获取服务详情 gonacli service get -s user-service # 创建服务 gonacli service create -s my-service # 删除服务 gonacli service delete -s my-service ``` ### 实例管理 ```bash # 列出实例 gonacli instance list -s user-service # 注册实例 gonacli instance register -s my-service --ip 192.168.1.100 --port 8080 # 注销实例 gonacli instance deregister -s my-service --ip 192.168.1.100 --port 8080 # 更新实例 gonacli instance update -s my-service --ip 192.168.1.100 --port 8080 --weight 2.0 ``` 更多命令示例请参考 [命令示例.md](命令示例.md)。 ## 技术栈 - **Go 1.26.0** - **Cobra** - CLI 框架 - **yaml.v3** - YAML 配置解析 ## 项目结构 ``` gonacli/ ├── cmd/ # 命令定义 │ ├── config.go # 配置管理命令 │ ├── namespace.go # 命名空间管理命令 │ └── service.go # 服务和实例管理命令 ├── client/ # HTTP 客户端 │ ├── auth.go # 认证相关 │ └── http.go # HTTP 请求封装 ├── config/ # 配置管理 │ └── config.go # 配置文件解析 ├── build/ # 编译输出目录 ├── main.go # 程序入口 ├── nacos.yaml # 配置文件示例 └── 命令示例.md # 详细命令示例 ``` ## 开发 ```bash # 运行 go run main.go config list # 构建 go build -o gonacli.exe main.go # 跨平台构建 # 查看 build.bat 或 build.sh 脚本 ``` ## 许可证 MIT License