最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

每日热闻!在 FreeBSD 12 上安装 Gitea

来源:博客园

引言

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

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

先决条件

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


(资料图)

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

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

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

第1步 - 安装 Git

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

pkg install git git-lfs

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

如果您使用的是 cshtcshshell,请在安装新软件后运行 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/giteachmod +x /usr/local/bin/gitea

第3步 - 创建用户

1.使用 adduser创建一个独立的系统账号 git用于托管 Gitea 程序:

adduser

2.继续在交互式命令工具中创建账号,可将账号设置为不使用密码。

[root@freebsd ~]# adduserUsername: gitFull 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]: noLock out the account after creation? [no]:Username   : gitPassword   : Full Name  :Uid        : 1002Class      :Groups     : gitHome       : /home/gitHome Mode  :Shell      : /bin/shLocked     : noOK? (yes/no): yesadduser: INFO: Successfully added (git) to the user database.Add another user? (yes/no): noGoodbye!

第4步 - 启动服务

1.创建工作文件夹:

mkdir -p /var/lib/gitea/{custom,data,log}chown -R git:git /var/lib/giteachmod -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.subrname="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 ]; thenecho "GITEA PID File not found. Maybe GITEA is not running?"elsekill $(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站点完成初始化

关键词: 创建用户 先决条件 服务器的