首页 > 其他分享 >在 FreeBSD 12 上安装 Gitea

在 FreeBSD 12 上安装 Gitea

时间:2023-02-03 21:23:52浏览次数:68  
标签:12 gitea Gitea git usr FreeBSD rc

引言

Gitea 是一个功能齐全的轻量级代码托管解决方案,后端采用 Go 编写,使用 MIT 许可证发布。它比 GitLab 更资源友好,互联网上许多知名开源项目依赖 Gitea 提供代码托管。

在本指南中,我们将演示如何在 FreeBSD 12 服务器上安装 Gitea。

先决条件

在开始本指南之前,您需要一个运行中的 FreeBSD 的服务器。本指南专门针对运行 FreeBSD 12 的服务器编写,尽管它也适用于受支持的旧操作系统版本。

如果您是 FreeBSD 的新手,您可以从 FreeBSD Documentation 获得服务器入门帮助。

此外,如果您计划为此服务器设置域名,则需要以下内容:

  • 您注册和控制的域名。如果您还没有注册域名,您可以在众多域名注册商之一(例如 阿里云、腾讯云 等)注册一个。
  • 将您的域指向服务器的公共 IP 地址的 DNS A 记录。

第1步 - 安装 Git

首先,我们使用 pkg FreeBSD 内置的二进制包管理工具安装 gitgit-lfs。以下命令将更新可用包的本地副本,然后安装 git 包:

pkg install git git-lfs

如果这是您第一次运行 pkg,它会询问您是否安装 pkg。此时,请输入 y 并按下 ENTER 来确认安装 pkg。然后,再向您询问是否安装 git 软件包。

如果您使用的是 cshtcsh 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站点完成初始化

标签:12,gitea,Gitea,git,usr,FreeBSD,rc
From: https://www.cnblogs.com/Gitea/p/setup-gitea-on-freebsd.html

相关文章

  • P4024 [CTSC2012]统计学家
    P4024[CTSC2012]统计学家洛谷:P4024[CTSC2012]统计学家Solution首先考虑离散化。rev1&rev2发现要么\(n=1\),要么\(m=1\),相当于对于一个一维数列求区间逆序对......
  • CSP201612-3权限查询
            多年后再回头看这道题觉得很简单,写起来还是很复杂,我的书写习惯不好,找bug找了很久。特别注意在构建角色时,一个角色可能会有多个权限,取最大值,又......
  • weblogic12C修复漏洞(禁用T3+IIOP)
    目录weblogic12C修复漏洞(禁用T3+IIOP)1、禁用T3协议1.1、配置规则1.2、启动2、禁用IIOP协议weblogic12C修复漏洞(禁用T3+IIOP)参考博客:https://blog.csdn.net/m0_716926......
  • 智慧自贸,2012亚洲物流信息化国际峰会成功举办
    版权声明:本文章由“上海美华系统有限公司”编辑组汇编而成,未经授权和许可,任何个人或媒体不得对本网站的文章及其他信息资料予以复制、转载、抄袭、改编。上海美华系统有限......
  • 欧盟花洒EN1112标准性能测试
    EN1112标准对淋浴喷头应符合的尺寸,密封性能,机械强度,耐水压性能,噪声特性等方面的指标,以及测试这些特性的方法程序进行了规定;EN1112标准适用于以沐浴为目的或用作卫生器具配件......
  • Veeam Backup & Recovery v12 新功能特性前瞻
    ​Veeam®是备份、恢复及数据管理解决方案领域的领军者,能够提供卓越的现代数据保护。为云端、虚拟、物理、SaaS和Kubernetes环境提供统一平台。借助业内数一数二的简单......
  • 亚马逊关于攀岩绳的政策是什么呢?BS EN 892:2012+A2:2021报告如何提交报告呢?
    亚马逊关于攀岩绳的政策是什么呢?攀岩绳又称主绳,是攀登的象征,它为攀登者与保护者之间建立起了一种可靠的远程连接,为操作者提供了一个安全的平衡过渡。亚马逊政策适用的攀岩绳......
  • UCF Local Programming Contest 2012 C. Clean Up the Powers that Be(记住这个错误)
    题意:题意很简单,写起来也不难,唯一需要注意的就是格式了。我是个憨憨,因为我数组开到,然后就到遍历直接写的到,所以就数组越界一直,重写完过了找了好久才发现,以后这种低级错误......
  • 2019年12月1号总结
    这个周末把银川南京复现赛都打了,自己一个人打的,先说一下对题目的感受,我自己一个人是在没看任何题解的情况下做的,感觉不是特别难,没有难到了那种写不出来的地步,现在想想出题人......
  • Codeforces1260 E Tournament(贪心)
    Description:Youareorganizingaboxingtournament,wherenboxerswillparticipate(ispowerof),andyourfriendisoneofthem.Allboxershavedifferents......