使用 Docker 搭建自己的 Git 仓库管理工具 – Gitea

使

Gitea 简介

Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

功能特性

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

建设性意见

  1. 部署在数据中心、拥有公网 IP 地址的家用网络中,或是使用内网穿透,以便随时随地访问
  2. 部署在 7 x 24 运行的 Linux 服务器、NAS 网络存储或其它小型化设备上
  3. 部署在创建有 RAID 阵列的设备上可以避免硬盘损坏引发的数据损毁

准备工作

  1. 安装 Docker
  2. 安装 Docker 可视化容器管理工具 – Portainer
  3. 安装 Docker 版本的 MariaDB 数据库和可视化数据库管理工具 phpMyAdmin

Gitea 部署

  1. 创建用于持久化存储 GitLab 数据的目录(命名规则参考)

    mkdir -p '自定义数据目录'/gitea
  2. 通过 Portainer 管理面板创建一个 GiteaMariaDB 专用的网络。

    点击 Portainer 左侧 Networks,点击右侧 Add network,在 name 处输入 gitea-net,然后直接点击页面底部的 Create the network 完成创建。

  3. 将之前安装的 MariaDB 加入刚才新建的 gitea-net 网络中

    点击 Portainer 左侧 Stacks,点击右侧列表中的 mariadb-phpmyadmin,切换到 Editor 选项卡,加入红框内的内容,然后点击页面下方的 Update the stack 完成修改

  4. 登录之前创建的 phpMyAdmin 管理页面,为 Gitea 创建专用数据库和账户

    点击管理页面 – 账户 – 新增用户账户

    img

    用户名填写 gitea,密码填写 insecure,勾选 创建与用户同名的数据库并授予所有权限,然后点击底部的执行。(账户和密码可自行修改)

    img

  5. 点击 portainer 控制面板左侧 Stacks ,在该页面中点击 Add stack

    img

  6. Stack 命名,根据需要修改下文中提供的模板并粘贴到页面上,然后点击页面底部 Deploy the stack 完成创建

    version: "3"
    
    services:
     server:
       image: gitea/gitea:latest          # latest 安装最新的版本
       container_name: gitea
       environment:
         - USER_UID=1000
         - USER_GID=1000
         - DB_TYPE=mysql
         - DB_HOST=mariadb:3306
         - DB_NAME=gitea
         - DB_USER=gitea                  # 刚才 phpMyadmin 填写的账户
         - DB_PASSWD=insecure             # 刚才 phpMyadmin 填写的密码
         - TZ=Asia/Shanghai
       restart: always                    # 设置重启策略
       volumes:
         - "'自定义数据目录'/gitea:/data"   # Gitea 数据目录
       ports:
         - "3000:3000"                    # HTTP 网页访问端口,例如要改为通过 6001 端口访问,就修改成 6001:3000
         - "2221:22"                      # SSH 端口
       networks:
         gitea-net:
    
    networks:
     gitea-net:
       external: true

登录

创建成功后,你可以通过打开 Web 浏览器并转到以下位置登录到您的 Gitea 实例:

http://localhost:3000 # 运行安装向导后,首次注册的账户将成为默认的管理员
  • 如果您不是在本机安装,请不要忘记将 localhost 替换为安装设备的实际 IP 地址
  • 如果您修改了默认的 HTTP 访问端口,请不要忘记将 3000 替换为您自定义的端口

延伸阅读

使用 HTTPS 加密你的站点,保护交换数据的隐私与完整性。
Gitea 的 SSH 容器直通配置

0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论
By 马丁龙猪

标签

归档

功能