从源码启动或编译

要想从源码启动TeaWeb,或者从源码编译TeaWeb,需要有以下几个前提,缺一不可:

  1. 安装Golang
  2. 安装Git

安装Golang

如果你还没有安装Golang运行环境,请先安装,Go的版本需要在 v1.10.0以上,国内可以从 GO语言中文网 下载并安装。

安装Go之后,需要确保go命令在系统的PATH环境变量中,可以通过以下命令测试Go是否可用:

go version

安装Git

运行环境必须有Git命令行环境,并需要确保git命令在系统的PATH环境变量中,可以通过以下命令测试Git是否可用:

git --version

如果还没有安装Git,可以从这里下载你的操作系统对应的版本。安装后可能需要重新打开你的终端或命令行工具才会生效。

使用工具下载源码

TeaWeb提供了一个工具方便开发者下载源码,可以在 https://github.com/TeaWeb/code-setup/releases 下载最新的版本,然后在某个空目录运行此工具,即可下载全部源码到当前空目录,并且会自动启动下载好的TeaWeb服务。当然,事前也需要安装Golang和Git。

从源码运行

  1. https://github.com/TeaWeb/build 中下载项目源码,放到本地磁盘上;
  2. 在开发工具中设置全局变量GOPATH为项目目录路径;
  3. cdsrc/main 目录
  4. 执行 init.sh (Windows上是init.bat)初始化项目,如果下载中出现网络错误,可以尝试多次运行此脚本;
  5. 执行 run.sh (Windows上是run.bat) 启动项目;
  6. 在浏览器中访问 http://127.0.0.1:7777

从源码编译

  1. https://github.com/TeaWeb/build 中下载项目源码,放到本地磁盘上;
  2. 在开发工具中设置全局变量GOPATH为项目目录路径;
  3. cdsrc/main 目录
  4. 执行 init.sh (Windows上是init.bat)初始化项目,如果下载中出现网络错误,可以尝试多次运行此脚本;
  5. 运行 build-[系统版本].sh 构建可执行文件,Windows上交叉编译环境配置比较复杂,建议在Linux或Mac上进行;
  6. 构建后的文件在 项目根目录/dist/ 目录下。

使用Git下载源码

如果你想使用Git下载源码,可以使用下面命令:

git clone https://github.com/TeaWeb/build.git
然后再运行init.sh(在Windows上使用init.bat):
./init.sh

GoLand

如果你正在使用GoLand开发工具,则可以在下面的界面中设置GOPATH: goland.png 其中画红框的部分为你的本地的项目根目录,在src目录的上一级。

常见问题

编译时遇到ACME相关错误

因为我们自己修改了go-acme/lego包,所以如果你直接从github上用go get获取代码可能会出现以下错误:

../github.com/TeaWeb/code/teaconfigs/ssl_acme_request.go:121:42: client.Certificate.GetRecords undefined (type *certificate.Certifier has no field or method GetRecords)

解决方法:只需要从 https://github.com/TeaWeb/build/tree/master/src/github.com/go-acme/lego 下载源码并覆盖即可。

git clone下载太慢

如果git clone太慢,可以尝试指定depth参数:

git clone "https://github.com/TeaWeb/build.git" --depth=1

寻求帮助

遇到了问题?可以在这里找到社区的联系方式,加入社区在线咨询。

评论 发表新评论

  取消

登录后才能发表评论

暂时还没有评论。

{{comment.nickname}}@{{comment.datetime}}
{{comment.body}}