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

 

posted @ 2022-12-29 18:09  SpringCore  阅读(728)  评论(0编辑  收藏  举报