Anubis项目本地开发环境搭建指南
前言
Anubis是一个基于Go语言开发的项目,本文将为开发者详细介绍如何在本地搭建Anubis的开发环境,包括必要的工具安装、开发流程以及生产环境构建等内容。
开发环境要求
在开始Anubis项目的本地开发前,需要确保系统已安装以下工具:
- Go语言环境 - Anubis的核心开发语言
- esbuild - 用于生产环境JavaScript资源的打包工具
- Node.js和NPM - 管理构建依赖项
- 压缩工具集:
gzip
- 通常包含在coreutils中zstd
- 高效的压缩工具brotli
- Google开发的压缩算法
快速安装方法
对于macOS用户,如果已安装Homebrew,可以通过以下命令一键安装所有依赖:
brew bundle
其他系统的用户需要根据各自系统的包管理器安装对应软件包。
本地开发流程
快速启动开发模式
最简单的启动方式是执行:
npm ci && npm run dev
这条命令会先安装所有依赖,然后启动开发服务器。
手动开发流程
如果需要对构建过程有更精细的控制,可以分步执行:
- 当CSS/JavaScript文件发生变化时,运行:
npm run assets
- 启动Anubis服务:
可以根据需要添加命令行参数go run ./cmd/anubis
资源文件构建
构建前端资源文件(CSS/JavaScript)的命令是:
npm run assets
如果修改了构建流程,请确保同时更新build.sh
脚本以保持一致性。
生产环境构建
容器镜像构建
要构建生产就绪的容器镜像,执行:
npm run container
此命令使用ko工具构建容器镜像。如果需要指定镜像仓库,可以通过环境变量配置:
DOCKER_REPO=registry.host/org/repo DOCKER_METADATA_OUTPUT_TAGS=registry.host/org/repo:latest npm run container
软件包构建
Anubis支持构建原生软件包(如Debian、RPM等),这需要额外的工具和步骤。
准备工作
-
安装
yeet
工具(当前版本为v1.13.4):go install within.website/x/cmd/yeet@v1.13.4
注:该工具未来将迁移到专用仓库
-
安装项目依赖:
npm ci go mod download
构建软件包
执行以下命令,构建结果将输出到./var
目录:
yeet
开发建议
- 对于前端资源修改,建议使用
npm run dev
自动监视文件变化 - 生产构建前,确保所有测试通过
- 软件包构建过程较为复杂,建议参考相关文档深入了解
- 保持Go和Node.js依赖项的最新状态
通过本文介绍的步骤,开发者可以顺利搭建Anubis项目的本地开发环境,并进行日常开发和构建工作。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考