Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
5.6 KiB
date | title | slug | sidebar_position | toc | draft | aliases | menu | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2016-12-01T16:00:00+02:00 | 使用二进制文件安装 | install-from-binary | 15 | false | false |
|
|
使用二进制文件安装
所有打包的二进制程序均包含 SQLite,MySQL 和 PostgreSQL 的数据库连接支持,同时网站的静态资源均已嵌入到可执行程序中,这一点和曾经的 Gogs 有所不同。
下载
你可以从 下载页面 选择对应平台的二进制文件。
选择架构
-
对于 Linux,
linux-amd64
适用于 64-bit 的 Intel/AMD 平台。更多架构包含arm64
(Raspberry PI 4),386
(32-bit),arm-5
以及arm-6
。 -
对于 Windows,
windows-4.0-amd64
适用于 64-bit 的 Intel/AMD 平台,386
适用于 32-bit 的 Intel/AMD 平台。(提示:gogit-windows
版本内建了 gogit 可能缓解在旧的 Windows 平台上 Go 程序调用 git 子程序时面临的 性能问题) -
对于 macOS,
darwin-arm64
适用于 Apple Silicon 架构,darwin-amd64
适用于 Intel 架构. -
对于 FreeBSD,
freebsd12-amd64
适用于 64-bit 的 Intel/AMD 平台。
使用 wget 下载
使用以下命令下载适用于 64-bit Linux 平台的二进制文件。
wget -O gitea https://dl.gitea.com/gitea/@version@/gitea-@version@-linux-amd64
chmod +x gitea
验证 GPG 签名
Gitea 对打包的二进制文件使用 GPG密钥 签名以防止篡改。
请根据对应文件名 .asc
中包含的校验码检验文件的一致性。
gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
gpg --verify gitea-@version@-linux-amd64.asc gitea-@version@-linux-amd64
校验正确时的信息为 Good signature from "Teabot <teabot@gitea.io>"
。
校验错误时的信息为 This key is not certified with a trusted signature!
。
服务器设置
提示: GITEA_WORK_DIR
表示 Gitea 工作的路径。以下路径可以通过 环境变量 初始化。
准备环境
检查是否安装 Git。要求 Git 版本 >= 2.0。
git --version
创建用户(推荐使用名称 git
)
# On Ubuntu/Debian:
adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/git \
git
# On Fedora/RHEL/CentOS:
groupadd --system git
adduser \
--system \
--shell /bin/bash \
--comment 'Git Version Control' \
--gid git \
--home-dir /home/git \
--create-home \
git
创建工作路径
mkdir -p /var/lib/gitea/{custom,data,log}
chown -R git:git /var/lib/gitea/
chmod -R 750 /var/lib/gitea/
mkdir /etc/gitea
chown root:git /etc/gitea
chmod 770 /etc/gitea
注意: 为了让 Web 安装程序可以写入配置文件,我们临时为
/etc/gitea
路径授予了组外用户git
写入权限。建议在安装结束后将配置文件的权限设置为只读。chmod 750 /etc/gitea chmod 640 /etc/gitea/app.ini
如果您不希望通过 Web 安装程序创建配置文件,可以将配置文件设置为仅供 Gitea 用户只读(owner/group root:git
, mode 0640
)并手工创建配置文件:
- 设置
INSTALL_LOCK=true
关闭安装界面 - 手动配置数据库连接参数
- 使用
gitea generate secret
创建SECRET_KEY
和INTERNAL_TOKEN
- 提供所有必要的密钥
详情参考 命令行文档 中有关 gitea generate secret
的内容。
配置 Gitea 工作路径
提示: 如果使用 Systemd 管理 Gitea 的 Linux 服务,你可以采用 WorkingDirectory
参数来配置工作路径。 否则,使用环境变量 GITEA_WORK_DIR
来明确指出程序工作和数据存放路径。
export GITEA_WORK_DIR=/var/lib/gitea/
复制二进制文件到全局位置
cp gitea /usr/local/bin/gitea
运行 Gitea
完成以上步骤后,可以通过两种方式运行 Gitea:
1. 创建服务自动启动 Gitea(推荐)
学习创建 Linux 服务
2. 通过命令行终端运行
GITEA_WORK_DIR=/var/lib/gitea/ /usr/local/bin/gitea web -c /etc/gitea/app.ini
升级到最新版本
您可以通过停止程序,替换 /usr/local/bin/gitea
并重启来更新到新版本。直接替换可执行程序时不要更改或使用新的文件名称,以避免数据出错。
建议您在更新之前进行备份。
1. 使用 systemd 重新启动 Gitea(推荐)
我们建议使用 systemd 作为服务管理器,使用 systemctl restart gitea
安全地重启程序。
2. 非 systemd 重启方法
使用 SIGHUP 信号关闭程序:查询到 Gitea 程序的 PID,使用 kill -1 $GITEA_PID
,或者 killall -1 gitea
。
更优雅的停止指令可能包括 kill $GITEA_PID
或者 killall gitea
。
提示: 我们不建议使用 SIGKILL 信号(-9
),这会强制停止 Gitea 程序,但不会正确关闭队列、索引器等任务。
请参阅下面的疑难解答说明,以在Gitea版本更新后修复损坏的仓库。
排查故障
更多经验总结,请参考英文版 Troubleshooting
如果从本页中没有找到你需要的内容,请访问 帮助页面