CentOS安装Gitea教程

简介

Gitea是一个极易安装,运行非常快速,安装和使用体验良好的自建Git服务。采用Go作为后端语言,这使得只要生成一个可执行程序即可。并且他还支持跨平台,支持Linux、macOS和Windows以及各种架构,除了x86,amd64,还包括ARM和 PowerPC。

Github地址:https://github.com/go-gitea/gitea

功能

  • 支持活动时间线
  • 支持SSH以及HTTP/HTTPS协议
  • 支持SMTP、LDAP和反向代理的用户认证
  • 支持反向代理子路径
  • 支持用户、组织和仓库管理系统
  • 支持添加和删除仓库协作者
  • 支持仓库和组织级别Web钩子(包括Slack集成)
  • 支持仓库Git钩子和部署密钥
  • 支持仓库工单(Issue)、合并请求(Pull Request)以及Wiki
  • 支持迁移和镜像仓库以及它的Wiki
  • 支持在线编辑仓库文件和Wiki
  • 支持自定义源的Gravatar和Federated Avatar
  • 支持邮件服务
  • 支持后台管理面板
  • 支持MySQL、PostgreSQL、SQLite3、MSSQL和TiDB(实验性支持)数据库
  • 支持多语言本地化(21种语言)

二进制安装

1、安装MySQL数据库

手动安装数据库方法不在这里说明,很简单。恰巧我这个站长安了宝塔服务器管理面板。啥啥套件都一键安装了。

宝塔可视化服务器面板安装。

#Centos系统
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

#Ubuntu系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh

#Debian系统
wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh

安装完成后,安装MySQL,至少5.7版本。

2、安装Git

先查看下内置的git版本,是否达到最新gitea的git版本要求。然后觉得是否升级。

#Debian和Ubuntu系统
apt-get -y install git

#CentOS系统
yum -y install git

#添加Git用户

groupadd git

useradd git -g git -s /bin/false

3、安装Gitea

创建目录

mkdir /home/git/gitea /var/log/gitea

获取程序

最新版本下载地址:https://dl.gitea.io/gitea

wget   https://dl.gitea.io/gitea/1.6.0-rc1/gitea-1.6.0-rc1-linux-amd64  -O /home/git/gitea/gitea
添加执行权限
chmod +x /home/git/gitea/gitea
修改所有人
chown -R git:git /home/git/gitea /var/log/gitea

运行项目

./gitea web

接下来打开http://ip:3000即可

常见问题

1、进入ip:3000打不开网站
打不开需要关闭防火墙,或者打开对应的3000端口。

CentOS 7
systemctl stop firewalld.service
systemctl disable firewalld.service

其它系统
iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
service iptables save
service iptables restart

2、保持程序一直运行
首先新建编辑下面这个文件
vi /etc/systemd/system/gitea.service

输入下面配置文件

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

[Unit]
Description=Gitea (Git with a cup of tea)
#After=syslog.target
After=network.target
#After=mysqld.service
#After=postgresql.service
#After=memcached.service
#After=redis.service
 
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/home/git/gitea
ExecStart=/home/git/gitea/gitea web
Restart=always
Environment=USER=git HOME=/home/git/gitea
 
[Install]
WantedBy=multi-user.target

之后执行
systemctl daemon-reload
sudo systemctl start gitea

如果服务不能启动,你要注意的是下面几点(systemctl status giea查看服务状态,journalctl -b 0 -u gitea查看日志)

首先你的gitea放的目录问题,因为使用git用户启动的服务,所以你的gitea所在目录肯定要让git用户有访问权限,所以root目录下是不可以的
之后上面的配置参数你也要按照自己的环境目录来写,不要复制粘贴了,After=mysqld.service表示在mysql服务启动之后再启动gitea服务,所以这个根据你的数据库来选择去掉哪个注释

服务操作相关命令

查看服务列表与状态

systemctl list-units --type=service

启动一个服务:

systemctl start gitea

关闭一个服务:

systemctl stop gitea

重启一个服务:

systemctl restart gitea

显示一个服务的状态:

systemctl status gitea

在开机时启用一个服务:systemctl enable gitea

在开机时禁用一个服务:systemctl disable gitea

查看服务是否开机启动: systemctl is-enabled gitea

查看已启动的服务列表: systemctl list-unit-files | grep enabled

查看启动失败的服务列表: systemctl --failed

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值