【开源推荐】go语言写的极易搭建的git服务gogs

简介: 【6月更文挑战第4天】

44k star,推荐一款go语言写的极易搭建的git服务gogs

如果你想自己搭建一套git仓库,又觉着gitlab太复杂了,那么可以看下这个项目。

安装简洁、界面清晰简单,如下:

image.png

开源地址可以到文末查看

Gogs是一个自托管的Git服务项目,旨在提供一个简单、稳定且可扩展的Git服务,可以以最无痛的方式进行设置。

Gogs项目简介

Gogs(发音为/gɑgz/)是一个开源项目,它致力于构建一个简单、稳定且可扩展的自托管Git服务。

该项目的目标是能够在所有Go支持的平台上,包括Linux、macOS、Windows和基于ARM的系统,通过独立的二进制分发来进行设置。

特点

  • 用户仪表板:提供简单的个人用户的历史记录,有简单的信息记录
  • 多协议访问:常规项支持通过SSH、HTTP和HTTPS协议访问仓库。
  • 管理功能:带有用户管理,仓库管理项
  • Webhooks和Git钩子:支持仓库和组织的webhooks,包括Slack、Discord和Dingtalk。

image.png

  • 问题跟踪和合作:支持仓库问题、拉取请求、wiki、受保护分支和协作。
  • 迁移和镜像:支持从其他代码托管平台迁移和镜像仓库及其wiki。
  • Web编辑器:用于快速编辑仓库文件和wiki。
  • 多种认证方式:支持SMTP、LDAP、反向代理、GitHub.com和GitHub Enterprise的认证,包括双因素认证。
  • 丰富的数据库支持:支持多种数据库后端,包括PostgreSQL、MySQL、SQLite3和TiDB。
  • 本地化:支持超过31种语言的本地化。

快速安装部署

个人使用的话,需要的资源很少,一个树莓派就足够了,如果是团队使用,那么建议2c512MB的配置

安装Gogs非常简单,这里介绍下docker如何安装:

image.png

如下为最简化实践,直接使用的sqllite数据库,如有需要可以自行安装mysql或者pg

version: "3.8"
services:
  gogs:
    image: gogs/gogs
    restart: unless-stopped
    ports:
      - 3000:3000

启动后,访问3000端口,需要进行一个简单的设置

image.png

新建一个项目作为测试,可以看到还有wiki可以编辑
image.png

image.png

开源地址:https://github.com/gogs/gogs

相关文章
|
人工智能 Kubernetes Java
回归开源,两位 Java 和 Go 程序员分享的开源贡献指引
Higress是一个基于Istio和Envoy的云原生API网关,支持AI功能扩展。它通过Go/Rust/JS编写的Wasm插件提供可扩展架构,并包含Node和Java的console模块。Higress起源于阿里巴巴,解决了Tengine配置重载及gRPC/Dubbo负载均衡问题,现已成为阿里云API网关的基础。本文介绍Higress的基本架构、功能(如AI网关、API管理、Ingress流量网关等)、部署方式以及如何参与开源贡献。此外,还提供了有效的开源贡献指南和社区交流信息。
2716 33
|
JSON 中间件 Go
Go 网络编程:HTTP服务与客户端开发
Go 语言的 `net/http` 包功能强大,可快速构建高并发 HTTP 服务。本文从创建简单 HTTP 服务入手,逐步讲解请求与响应对象、URL 参数处理、自定义路由、JSON 接口、静态文件服务、中间件编写及 HTTPS 配置等内容。通过示例代码展示如何使用 `http.HandleFunc`、`http.ServeMux`、`http.Client` 等工具实现常见功能,帮助开发者掌握构建高效 Web 应用的核心技能。
666 61
|
开发框架 安全 前端开发
Go Web开发框架实践:模板渲染与静态资源服务
Gin 是一个功能强大的 Go Web 框架,不仅适用于构建 API 服务,还支持 HTML 模板渲染和静态资源托管。它可以帮助开发者快速搭建中小型网站,并提供灵活的模板语法、自定义函数、静态文件映射等功能,同时兼容 Go 的 html/template 引擎,具备高效且安全的页面渲染能力。
|
开发框架 JSON 中间件
Go语言Web开发框架实践:使用 Gin 快速构建 Web 服务
Gin 是一个高效、轻量级的 Go 语言 Web 框架,支持中间件机制,非常适合开发 RESTful API。本文从安装到进阶技巧全面解析 Gin 的使用:快速入门示例(Hello Gin)、定义 RESTful 用户服务(增删改查接口实现),以及推荐实践如参数校验、中间件和路由分组等。通过对比标准库 `net/http`,Gin 提供更简洁灵活的开发体验。此外,还推荐了 GORM、Viper、Zap 等配合使用的工具库,助力高效开发。
|
人工智能 API 开发工具
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
GitHub MCP Server是基于Model Context Protocol的服务器工具,提供与GitHub API的无缝集成,支持自动化处理问题、Pull Request和仓库管理等功能。
3881 2
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
|
存储 JSON Go
PHP 日志系统的最佳搭档:一个 Go 写的远程日志收集服务
为了不再 SSH 上去翻日志,我写了个 Go 小脚本,用来接收远程日志。PHP 负责记录日志,Go 负责存储和展示,按天存储、支持 API 访问、可远程管理,终于能第一时间知道项目炸了。
462 10
|
Go UED
Go Web服务中如何优雅平滑重启?
在生产环境中,服务升级时如何确保不中断当前请求并应用新代码是一个挑战。本文介绍了如何使用 Go 语言的 `endless` 包实现服务的优雅重启,确保在不停止服务的情况下完成无缝升级。通过示例代码和测试步骤,详细展示了 `endless` 包的工作原理和实际应用。
569 3
|
JSON Go UED
Go Web服务中如何优雅关机?
在构建 Web 服务时,优雅关机是一个关键的技术点,它确保服务关闭时所有正在处理的请求都能顺利完成。本文通过一个简单的 Go 语言示例,展示了如何使用 Gin 框架实现优雅关机。通过捕获系统信号和使用 `http.Server` 的 `Shutdown` 方法,我们可以在服务关闭前等待所有请求处理完毕,从而提升用户体验,避免数据丢失或不一致。
432 1
|
Go API 开发者
深入探讨:使用Go语言构建高性能RESTful API服务
在本文中,我们将探索Go语言在构建高效、可靠的RESTful API服务中的独特优势。通过实际案例分析,我们将展示Go如何通过其并发模型、简洁的语法和内置的http包,成为现代后端服务开发的有力工具。
|
存储 数据可视化 开发工具
2款.NET开源且免费的Git可视化管理工具
2款.NET开源且免费的Git可视化管理工具
594 1

热门文章

最新文章