前言
没有前言,仅仅觉得之前搭建 samba 服务的机器性能还完全过剩,给他找点事做。
选择
在这些中我选择了 Gitea 作为个人 Git 服务的软件,原因是这个软件使用 Go 语言开发,其运行命令只有一条即可。
Gitea
下载
直接通过 github 仓库中的 releases 下载对应架构的可执行二进制文件即可。
配置文件
在 Gitea 中需要对一些基础内容进行定义,路径可以按个人习惯,读取配置文件取决于启动时命令的参数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| vim /etc/gitea/app.ini
WORK_PATH = /srv/samba/store/gitea
[server] APP_DATA_PATH = /srv/samba/store/gitea/data STATIC_ROOT_PATH = /srv/samba/store/gitea RUN_USER = smber
[log] ROOT_PATH = /srv/samba/store/gitea/data/log MODE = file LEVEL = error
|
由于这个机器当时只有分区没考虑到其他服务,所以使用的依旧是 samba 的路径与用户。
init.d
busybox 没有像诸多发行版一样的 systemctl 以及 service 功能,因此只能实现一个 init.d 描述文件,进行启动与停止。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| vim /etc/init.d/S92gitea
# 基本配置 GITEA_HOME=/srv/samba/store/gitea GITEA_PATH=/usr/bin/gitea-1.22.4-linux-arm64 GITEA_USER=smber GITEA_CONFIG=/etc/gitea/app.ini NAME=smber PIDFILE=/var/run/$NAME.pid GITEA_WORK_DIR=/srv/samba/store/gitea
start() { printf "Starting $NAME: " # check if ! id -u $GITEA_USER >/dev/null 2>&1; then echo "User $GITEA_USER does not exist" exit 1 fi
# start gitea start-stop-daemon -S -b -m \ -p $PIDFILE \ -c $GITEA_USER \ -x $GITEA_PATH -- web -c $GITEA_CONFIG
[ $? = 0 ] && echo "OK" || echo "FAIL" }
stop() { printf "Stopping $NAME: " start-stop-daemon -K -p $PIDFILE [ $? = 0 ] && echo "OK" || echo "FAIL" rm -f $PIDFILE }
restart() { stop sleep 1 start }
case "$1" in start) start ;; stop) stop ;; restart|reload) restart ;; *) echo "Usage: \$0 {start|stop|restart}" exit 1 esac
exit $?
|
运行
/etc/init.d/S92gitea start
运行即可,访问 3000 端口会出现自定义的配置页面。