Cloudreve
论坛
GitHub
搜索文档…
简体中文
欢迎
起步
快速开始
配置文件
构建
使用
存储策略
WebDAV
离线下载
自定义前端
捐助版相关
维护
数据库脚本
升级
由
GitBook
提供支持
构建
Cloudreve 项目主要由两部分组成:后端主仓库
cloudreve/Cloudreve
,以及前端仓库
cloudreve/frontend
。编译 Cloudreve 后端前,需要先构建
assets
目录下的前端子模块,并使用
statik
嵌入到后端仓库。
环境准备
1.
参照
Getting Started - The Go Programming Language
安装并配置 Go 语言开发环境 (>=1.17);
2.
参考
下载 | Node.js
安装 Node.js;
3.
参考
安装 | Yarn
安装Yarn;
开始构建
克隆代码
1
# 克隆仓库
2
git
clone --recurse-submodules https://github.com/cloudreve/Cloudreve.git
3
4
# 签出您要编译的版本
5
git
checkout
3
.x.x
Copied!
构建静态资源
1
# 进入前端子模块
2
cd
assets
3
# 安装依赖
4
yarn
install
5
# 开始构建
6
yarn
run build
Copied!
完成后,所构建的静态资源文件位于
assets/build
目录下。
你可以将此目录改名为
statics
目录,放置在 Cloudreve 主程序同级目录下并重启 Cloudreve,Cloudreve 将会使用此目录下的静态资源文件,而非内置的。
编译项目
1
# 回到项目主目录
2
cd
..
/
3
4
# 获得当前版本号、Commit
5
export
COMMIT_SHA
=
$(
git
rev-parse --short HEAD
)
6
export
VERSION
=
$(
git
describe --tags
)
7
8
# 开始编译
9
go build -a -o cloudreve -ldflags
" -X 'github.com/cloudreve/Cloudreve/v3/pkg/conf.BackendVersion=
$VERSION
' -X 'github.com/cloudreve/Cloudreve/v3/pkg/conf.LastCommit=
$COMMIT_SHA
'"
Copied!
首次编译时,Go 会下载相关依赖库,如果您的网络环境不佳,可能会导致这一步速度过慢或者失败。你可以使用
GOPROXY.IO
加快模块下载速度。
编译完成后,会在项目根目录下生成最终的可执行文件
cloudreve
。
构建助手
你可以使用项目根目录下的构建脚本
build.sh
快速完成构建、打包等操作,使用方法如下:
1
./build.sh
[
-a
]
[
-c
]
[
-b
]
[
-r
]
2
a - 构建静态资源
3
c - 编译二进制文件
4
b - 构建前端 + 编译二进制文件
5
r - 交叉编译,构建用于release的版本
Copied!
交叉编译
交叉编译前,你需要启用
CGO
,正确安装目标平台的 GCC 工具链,并将
CC
环境变量设定为对应平台的GCC 编译工具。
比如,在 Linux/AMD64 宿主平台上交叉编译 Windows/AMD64:
1
export
GOOS
=
windows
2
export
GOARCH
=
amd64
3
export
CC
=
x86_64-w64-mingw32-gcc
4
export
CGO_ENABLED
=
1
5
6
go build
Copied!
起步 - 以前
配置文件
下一个 - 使用
存储策略
最近更新
29d ago
复制链接
在 GitHub 上编辑
内容
环境准备
开始构建
克隆代码
构建静态资源
编译项目
构建助手
交叉编译