憨豆说安全 · 2020年08月12日

云芯一号教程 - Gitea安装及配置教程

  Gitea是一个自己托管的Git服务程序,从Gogs发展而来,其首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建Git服务。Gitea采用Go作为后端语言,采用MIT许可证,支持跨平台,支持Linux,macOS和 Windows以及各种架构,除了x86,amd64,还包括ARM和PowerPC。

1.Gitea安装
1.1 下载安装Gitea
  Gitea在Linux操作系统中的安装方式有两种:Docker安装和从二进制安装。这里选择从二进制安装。

  wget -O gitea https://dl.gitea.io/gitea/1.11.4/gitea-1.11.4-linux-arm64
  chmod +x gitea

  下载完成后,可以测试一下。

  ./gitea web

  命令执行没有问题,可以"Ctrl + C"关掉程序。

1.2 配置开机自启动
  作为服务器,每次开机手动启动会很麻烦,所以需要配置成service服务,并开机自启动。
  配置service有两种方式:systemd方式和使用supervisor。这里采用systemd方式来配置。
  编写gitea.service文件,格式请参考实例:

  https://github.com/go-gitea/gitea/blob/master/contrib/systemd/gitea.service

  sudo vim /etc/systemd/system/gitea.service

  修改user,home目录以及其他必须的初始化参数。

  ......
  User=gitea
  Group=gitea
  WorkingDirectory=/home/gitea/
  ......
  ExecStart=/usr/local/bin/gitea web  
  Restart=always
  Environment=USER=gitea HOME=/home/gitea GITEA_WORK_DIR=/var/lib/gitea

1.3 补充工作
  gitea.service文件涉及到user、home、启动命令路径、配置文件路径等,需要手动创建。

  把gitea执行文件,拷贝到/usr/local/bin/目录下。

  sudo cp gitea /usr/local/bin/

  创建gitea用户。

  sudo adduser gitea

  创建gitea使用目录,并修改权限。

  sudo mkdir -p /var/lib/gitea/{custom,data,log,ssl}
  sudo chown -R gitea:gitea /var/lib/gitea/
  sudo chmod -R 750 /var/lib/gitea/
  sudo mkdir /etc/gitea
  sudo chown root:gitea /etc/gitea
  sudo chmod 770 /etc/gitea

1.4 启动gitea服务
  激活gitea,并将它作为系统自启动服务。

  sudo systemctl enable gitea
  sudo systemctl start gitea

2.配置Gitea
2.1 安装数据库
  常用的数据库Gitea都支持,如PostgreSQL,MySQL,SQLite。这里使用MySQL数据库。MySQL数据库的安装请参考《MySQL安装指导及基础使用教程》和《MySQL集群搭建教程》
2.2 配置数据库
  连接MySQL数据库,创建gitea使用的账号gitea。

  CREATE USER 'gitea' IDENTIFIED BY 'gitea';

  创建gitea使用的数据库giteadb。

  CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';  

  授权gitea用户对giteadb数据库的操作权限。

  GRANT ALL PRIVILEGES ON giteadb.* TO 'gitea';
  FLUSH PRIVILEGES;

2.3 配置gitea
  用浏览器访问gitea配置页面http://ip:3000, 点击"注册",按照数据库的定义进行设置后,即可创建账号登录管理界面了。

推荐阅读
关注数
4278
内容数
71
低成本Arm微服务器开发平台“云芯1号”教程及应用,欢迎关注
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息