在 FreeBSD 12 上安装 Gitea
Posted Gitea
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在 FreeBSD 12 上安装 Gitea相关的知识,希望对你有一定的参考价值。
引言
Gitea 是一个功能齐全的轻量级代码托管解决方案,后端采用 Go 编写,使用 MIT 许可证发布。它比 GitLab 更资源友好,互联网上许多知名开源项目依赖 Gitea 提供代码托管。
在本指南中,我们将演示如何在 FreeBSD 12 服务器上安装 Gitea。
先决条件
在开始本指南之前,您需要一个运行中的 FreeBSD 的服务器。本指南专门针对运行 FreeBSD 12 的服务器编写,尽管它也适用于受支持的旧操作系统版本。
如果您是 FreeBSD 的新手,您可以从 FreeBSD Documentation 获得服务器入门帮助。
此外,如果您计划为此服务器设置域名,则需要以下内容:
- 您注册和控制的域名。如果您还没有注册域名,您可以在众多域名注册商之一(例如 阿里云、腾讯云 等)注册一个。
- 将您的域指向服务器的公共 IP 地址的 DNS
A
记录。
第1步 - 安装 Git
首先,我们使用 pkg
FreeBSD 内置的二进制包管理工具安装 git
和 git-lfs
。以下命令将更新可用包的本地副本,然后安装 git
包:
pkg install git git-lfs
如果这是您第一次运行 pkg
,它会询问您是否安装 pkg
。此时,请输入 y
并按下 ENTER
来确认安装 pkg
。然后,再向您询问是否安装 git
软件包。
如果您使用的是 csh
或 tcsh
shell,请在安装新软件后运行 rehash
命令。这使 shell 能查询到您新安装的应用程序:
rehash
第2步 - 下载 Gitea
1.下载预编译的 FreeBSD 二进制程序包:
wget https://dl.gitea.io/gitea/1.18.3/gitea-1.18.3-freebsd12-amd64
2.将 gitea
移动到 /usr/local/bin
作为命令行工具:
mv gitea-*-freebsd12-amd64 /usr/local/bin/gitea
chmod +x /usr/local/bin/gitea
第3步 - 创建用户
1.使用 adduser
创建一个独立的系统账号 git
用于托管 Gitea 程序:
adduser
2.继续在交互式命令工具中创建账号,可将账号设置为不使用密码。
[root@freebsd ~]# adduser
Username: git
Full name:
Uid (Leave empty for default):
Login group [git]:
Login group is git. Invite git into other groups? []:
Login class [default]:
Shell (sh csh tcsh bash rbash git-shell nologin) [sh]:
Home directory [/home/git]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]: no
Lock out the account after creation? [no]:
Username : git
Password : <disabled>
Full Name :
Uid : 1002
Class :
Groups : git
Home : /home/git
Home Mode :
Shell : /bin/sh
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (git) to the user database.
Add another user? (yes/no): no
Goodbye!
第4步 - 启动服务
1.创建工作文件夹:
mkdir -p /var/lib/gitea/custom,data,log
chown -R git:git /var/lib/gitea
chmod -R 750 /var/lib/gitea
2.编写 rc 启动脚本 /usr/local/etc/rc.d/gitea
:
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: gitea
# REQUIRE: NETWORKING SYSLOG
# KEYWORD: shutdown
#
# Add the following lines to /etc/rc.conf to enable gitea:
#
# gitea_enable="YES"
#
# https://github.com/go-gitea/gitea/blob/main/contrib/init/freebsd/gitea
. /etc/rc.subr
name="gitea"
rcvar="gitea_enable"
load_rc_config $name
: $gitea_user:="git"
: $gitea_enable:="NO"
: $gitea_directory:="/var/lib/gitea"
command="/usr/local/bin/gitea web"
procname="$(echo $command |cut -d\' \' -f1)"
pidfile="$gitea_directory/$name.pid"
start_cmd="$name_start"
stop_cmd="$name_stop"
gitea_start()
cd $gitea_directory
export USER=$gitea_user
export HOME=/home/$gitea_user
export GITEA_WORK_DIR=$gitea_directory
/usr/sbin/daemon -f -u $gitea_user -p $pidfile $command
gitea_stop()
if [ ! -f $pidfile ]; then
echo "GITEA PID File not found. Maybe GITEA is not running?"
else
kill $(cat $pidfile)
fi
run_rc_command "$1"
3.编辑 rc 脚本权限
chmod 755 /usr/local/etc/rc.d/gitea
4.启动服务:
sysrc \'gitea_enable=YES\'
service gitea start
第5步 - 访问Web站点完成初始化
以上是关于在 FreeBSD 12 上安装 Gitea的主要内容,如果未能解决你的问题,请参考以下文章