Centos安装Gitea
准备工作:
1.安装git
yum install git
2.安装mysql【略】,mysql只是可选的数据库其中之一,可选的还有 postgres,mssql,sqlite3 ...
注:需要创建保存gitea数据的数据库
CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';
3.创建用户组及用户
groupadd git adduser --system --shell /bin/bash --comment 'Git Version Control' --home-dir /home/git -m git -g git
4.创建相关目录
mkdir -p /var/lib/gitea/{custom,data,log} chown git:git /var/lib/gitea/{data,indexers,log} mkdir /etc/gitea chown root:git /etc/gitea/ chmod 770 /etc/gitea/
1.下载二进制文件并赋权
wget -O /usr/local/bin/gitea https://dl.gitea.io/gitea/1.18/gitea-1.18-linux-amd64
chmod +x /usr/local/bin/gitea
2.将二进制注册为服务
cat > /etc/systemd/system/gitea.service << EOF [Unit] Description=Gitea (Git with a cup of tea) After=syslog.target After=network.target ### # 不要忘记添加数据库服务依赖项 ### # #Wants=mysql.service #After=mysql.service # #Wants=mariadb.service #After=mariadb.service # #Wants=postgresql.service #After=postgresql.service # #Wants=memcached.service #After=memcached.service # #Wants=redis.service #After=redis.service # ### # If using socket activation for main http/s ### # #After=gitea.main.socket #Requires=gitea.main.socket # ### # (You can also provide gitea an http fallback and/or ssh socket too) # # An example of /etc/systemd/system/gitea.main.socket ### ## ## [Unit] ## Description=Gitea Web Socket ## PartOf=gitea.service ## ## [Socket] ## Service=gitea.service ## ListenStream=<some_port> ## NoDelay=true ## ## [Install] ## WantedBy=sockets.target ## ### [Service] # 如果您有包含大量文件的repo,并因此收到HTTP 500错误,请取消注释下一行 # LimitNOFILE=524288:524288 RestartSec=2s Type=simple User=git Group=git WorkingDirectory=/var/lib/gitea/ # 如果使用Unix套接字:告诉systemd创建/run/gitea文件夹,其中包含gitea.sock文件 # (手动创建/run/gitea不起作用,因为它不会在重新启动时持续存在) #RuntimeDirectory=gitea ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini Restart=always Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea # 如果将Git安装到默认PATH以外的目录前缀(发生这种情况 # 例如,如果您并排安装其他版本的Git # 分发版本),取消注释下面的行并将该前缀添加到PATH # 如果要启用,不要忘记在PATH中放置git-lfs二进制文件 # Git LFS support #Environment=PATH=/path/to/git/bin:/bin:/sbin:/usr/bin:/usr/sbin # 如果要将Gitea绑定到1024以下的端口,请取消注释 # 下面的两个值,或者使用套接字激活来传递Gitea的端口,如上所述 ### #CapabilityBoundingSet=CAP_NET_BIND_SERVICE #AmbientCapabilities=CAP_NET_BIND_SERVICE ### # 在某些情况下,当使用CapabilityBoundingSet和AmbientCapabilities选项时,您可能需要 # 将以下值设置为false,以允许在gitea进程上应用功能。以下内容 # 值,如果设置为true sandboxes gitea服务,并防止任何进程以特权运行 # 在主机用户命名空间中。 ### #PrivateUsers=false ### [Install] WantedBy=multi-user.target EOF
3.注册为开机自启并启动服务
sudo systemctl daemon-reload sudo systemctl enable gitea sudo systemctl start gitea
4.开放3000端口【我的是AlmaLinux8.7,其余的Linux请查询自身的防火墙开端口指令】
firewall-cmd --zone=public --add-port=3000/tcp --permanent //添加端口 firewall-cmd --reload //重载 firewall-cmd --zone=public --query-port=3000/tcp //查询端口开放是否成功
5.配置gitea【略】
请参数官方示例文件:https://github.com/go-gitea/gitea/blob/main/custom/conf/app.example.ini
1.Webhook报错 webhook.ALLOWED_HOST_LIST
修改 /data/gitea/conf/app.ini 配置文件,确保存在如下配置
[webhook] ALLOWED_HOST_LIST = 192.168.64.129
2.配置开启gitea actions
[actions]
ENABLED = true
6.访问UI并初始化
http://ip:3000