码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 部署轻量级Gitea替代GitLab进行版本控制(一)


    Gitea 是一款使用 Golang 编写的可自运营的代码管理工具。

    Gitea Official Website

    gitea: Gitea的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建 Git 服务。我们采用Go作为后端语言,这使我们只要生成一个可执行程序即可。

    在这个领域,名气最响的应该是 Gitlab。

    但实际使用中Gitlab也有点问题,首先就是资源占用。Gitlab 是使用 ruby 编写的,好几年之前刚出来的时候,一台1G内存的虚拟主机连安装运行都做不到,着实震惊。

    时至今日都已经发展到了以docker镜 像分发,gitlab 仍旧会有体积和运行时资源占用的问题。另一点就是功能,对于一般标准团队来说,gitlab的功能太过于丰富,这是往好的地方说,往坏的地方说就是它包含了太多不需要的东西,而这些东西还占用磁盘和运行时资源。

    同时 Gitlab 的许可证政策对新的用户也不是非常友好,主要在于与其他平台的同步上面。

    例如有一个下面的场景:你将代码提交到自己的服务器上后,如果希望能够自动同步到其他的平台上,比如 GitHub 或者从其他平台上镜像回来,Gitlab 的社区版本是做不到的。
     

    Gitea 和 Gogs 的关系
    Gitea 其实是 Gogs 的一个分支。

    这 2 个都有国人的参与,只是 Gogs 可能开发理念和 Gitea 有所不同,感觉社区上面的参与度不高。

    同时 Gogs 更新速度较慢,因此可能选择 Gitea 会多一些。

    使用golang研发的软件分发都很容易,体积小,安装使用简单,运行时占用资源少。

    且gitea的功能很完备。

    我们也选择使用了 Gitea 。

    vim docker-compose.yml
    1. version: "3"
    2. networks:
    3. gitea:
    4. external: false
    5. services:
    6. server:
    7. image: gitea/gitea:1.21.1
    8. container_name: gitea
    9. environment:
    10. - USER_UID=1000
    11. - USER_GID=1000
    12. - GITEA__database__DB_TYPE=mysql
    13. - GITEA__database__HOST=db:3306
    14. - GITEA__database__NAME=gitea
    15. - GITEA__database__USER=gitea
    16. - GITEA__database__PASSWD=gitea
    17. restart: always
    18. networks:
    19. - gitea
    20. volumes:
    21. - ./gitea:/data
    22. - /etc/timezone:/etc/timezone:ro
    23. - /etc/localtime:/etc/localtime:ro
    24. ports:
    25. - "3000:3000"
    26. - "222:22"
    27. depends_on:
    28. - db
    29. db:
    30. image: mysql:8
    31. restart: always
    32. environment:
    33. - MYSQL_ROOT_PASSWORD=gitea
    34. - MYSQL_USER=gitea
    35. - MYSQL_PASSWORD=gitea
    36. - MYSQL_DATABASE=gitea
    37. networks:
    38. - gitea
    39. volumes:
    40. - ./mysql:/var/lib/mysql

  • 相关阅读:
    充分利用学习平台,提升个人职业竞争力
    Apache Doris 是什么
    Linux基本操作思维导图(五)
    source命令执行sql脚本在DOS界面出现中文乱码问题
    暑假加餐|有钱人和你想的不一样(第9天)+NSGAⅡ与MOEAD算法Matlab代码
    直流有刷电机开环调速基于STM32F302R8+X-NUCLEO-IHM07M1(一)
    vue3 打印局部网页、网页下载为图片、下载为pdf-自动分页,几行代码搞定
    网页设计前端作品(大一)HTML+CSS
    安装 Windows 7 VM虚拟机
    【操作系统】调度算法的评价指标和三种调度算法
  • 原文地址:https://blog.csdn.net/qq_42672770/article/details/137982202
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号