wsl2+ubuntu20.04安装gitea备忘

安装wsl2

适用于 Linux 的 Windows 子系统安装指南 (Windows 10)

注意:1909以下的系统一定要先升级才能使用wsl2

自动启动

wsl2不支持systemd,需要在/etc/init.d下注册服务脚本。或者使用supervisor
在 Ubuntu 16.04 LTS 中以 service 方式运行

安装mysql

gitea默认使用mysql,安装及使用参见mysql文档

create database gitea;
create user 'gitea'@'%' identified by 'PASSWORD';
grant all privileges on gitea.* to 'gitea'@'%';

安装gitea

获取可执行文件

从gitea-runable-1.13.2下载gitea的可执行文件,版本任选
若不能从github下载可执行文件,也可以从gitea-github或者镜像网站gitea-src-mirror下载源码自行编译

gitea-${GITEA_VERSION}-linux-amd64是可执行文件,直接运行即可

创建工作环境

创建数据目录链接

如果是使用独立数据盘,需要进行额外链接设置

mkdir -p ${DATA_DIR}
cd /home
ln -s ${DATA_DIR} git

在创建了git用户后,更改数据目录权限

chown git:git ${DATA_DIR}

创建git用户

sudo adduser --system --group --disabled-password \
--shell /bin/bash --home /home/git \
--gecos 'Git Version Control' git

参考 如何在 Ubuntu 18.04 上安装和配置 Gogs

创建gitea程序安装环境

mkdir -p ${TOOL_ROOT}/gitea
cp gitea-${GITEA_VERSION}-linux-amd64 ${TOOL_ROOT}/gitea
sudo mkdir -p /opt/gitea
cd /opt/gitea
sudo ln -s ${TOOL_ROOT}/gitea/gitea-${GITEA_VERSION}-linux-amd64 gitea
cd ${TOOL_ROOT}/gitea
chmod 775 gitea-${GITEA_VERSION}-linux-amd64

创建启动脚本

mkdir -p ${TOOL_ROOT}/gitea/autostart
cd ${TOOL_ROOT}/gitea/autostart
tee gitea.supervisor << EOF
[program:gitea]
directory=/home/git/gitea/
command=/opt/gitea/gitea --work-path /home/git/gitea/workpath --custom-path /home/git/gitea/workpath/custom --config /home/git/gitea/workpath/conf/app.ini web
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/home/git/log/gitea/stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/home/git/log/gitea/stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
user = git
environment = HOME="/home/git", USER="git"
EOF
cd /etc/supervisor/conf.d
ln -s ${TOOL_ROOT}/gitea/autostart/ gitea.supervisor gitea.conf

sudo service supervisor restart

测试gitea启动命令

因为gitea服务是用git用户启动,因此测试gitea的启动命令是否正确需要使用su或runuser命令。而因为git用户无法登录,直接su -l git -c 'command'会报权限错误,因此我们需要先通过su命令登录为root后再使用su或runuser命令以git身份进行操作。

su

输入密码登录为root后

su -l git -c "/opt/gitea/gitea --work-path /home/git/gitea/workpath --custom-path /home/git/gitea/workpath/custom --config /home/git/gitea/workpath/conf/app.ini web"

runuser -l git -c "/opt/gitea/gitea --work-path /home/git/gitea/workpath --custom-path /home/git/gitea/workpath/custom --config /home/git/gitea/workpath/conf/app.ini web"

你可能感兴趣的:(wsl2+ubuntu20.04安装gitea备忘)