跳至主要內容

一款简单轻量的自助Git客户端

Leo服务搭建服务搭建约 882 字大约 3 分钟

推荐一款简单轻量的自助Git客户端- Gitea

前言

大家好,我是Leo哥🫣🫣🫣,本文将介绍如何在linux使用docker安装Gitea实现自托管代码仓库。

简单介绍

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

Github地址:https://github.com/go-gitea/giteaopen in new window

功能

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

搭建环境和前提

环境说明

  • 操作系统:Centos7.9
  • Docker Compose版本:v2.29.1
  • MySQL版本:5.7
  • Gitea版本:1.2.2

安装前提

Gitea 可以使用 MySQL、PostgreSQL、MSSQL、SQLite3 作为数据库存储,如果你对其中某个数据库熟悉可以选择相应的数据库,我选择的是默认的 SQLite3。

Docker Compose 部署Gitea

创建目录

创建一个目录用来存放配置文件

mkdir -p /opt/software/data/gitea
mkdir -p /opt/software/data/gitea/config

然后进入目录创建docker-compose文件

cd /opt/software/data/gitea/config
vim ./docker-compose.yml

配置文件内容

本示例为最基础的版本,默认使用 SQLite3 初始化数据库,如需其他数据库,请参考官方文档open in new window

networks:
  gitea:
    external: false

services:
  gitea:
    image: gitea/gitea:latest
    container_name: gitea
    environment:
      - TZ=Asia/Shanghai # 设置容器的时区为亚洲/上海
    restart: unless-stopped
    networks:
      - gitea
    volumes:
      - ./config:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro # 如果是openwrt这一行可以
    ports:
      - "3000:3000"
      - "2222:22"
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

启动容器

docker compose up -d

查看容器是否正常运行:

CleanShot 2024-09-08 at 18.28.08@2x
CleanShot 2024-09-08 at 18.28.08@2x

访问测试

浏览器里输入 ip + 3000 端口即可看到如下页面:

CleanShot 2024-09-08 at 18.35.33@2x
CleanShot 2024-09-08 at 18.35.33@2x

初始化配置

CleanShot 2024-09-08 at 18.31.06@2x
CleanShot 2024-09-08 at 18.31.06@2x

登录注册

点击立即安装即可进行注册页面。首先需要注册一个账号。

CleanShot 2024-09-08 at 18.39.35@2x
CleanShot 2024-09-08 at 18.39.35@2x

然后即可进入主页面。

CleanShot 2024-09-08 at 18.40.21@2x
CleanShot 2024-09-08 at 18.40.21@2x

剩下的操作就跟Gitub,Gitee操作类似了,我这里就不过多赘述了。

以上便是本文的全部内容,本人才疏学浅,文章有什么错误的地方,欢迎大佬们批评指正!我是 Leo,一个在互联网行业的小白,立志成为更好的自己。

如果你想了解更多关于Leo,可以关注公众号-程序员Leo,后面文章会首先同步至公众号。

公众号封面
公众号封面