『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道

背景

Git是目前使用最广泛的代码版本管理工具,如果是自己一个人用,那么自己建个本地仓库就可以进行正常的版本管理了,但如果是多个成员共享代码,那就必须有一个Git服务器。

刚好公司最近要搭建一套自己的代码托管服务器,所以我先提前搭建一套Gitblit服务器体验下。

Gitblit介绍
介绍

Gitblit 是一个开源的纯 Java Git 解决方案,用于管理、查看和服务Git存储库。它可以通过 GIT、HTTP 和 SSH 传输服务存储库,作为一款基于Git的代码托管和团队协作工具。

特点
  • 易于安装和配置:Gitblit具有简单易用的安装和配置,可以轻松地在Windows、Linux和Mac等多种操作系统上安装和使用。

  • Web界面:Gitblit提供了简单而强大的Web界面,使团队成员可以轻松地浏览代码、提交和合并请求、查看历史记录等。

  • 分布式:Gitblit是基于Git的,因此具有Git的分布式版本控制的优点,如支持快速的分支和合并操作、本地提交等。

  • 安全性:Gitblit提供了用户管理、权限管理和SSL加密等安全功能,以确保代码仓库的安全性和私密性。

  • 可定制性:Gitblit提供了可插拔的插件系统和自定义脚本功能,用户可以轻松地根据自己的需求进行扩展和定制。

  • 可扩展性:Gitblit可以与其他工具集成,如Jenkins、JIRA、Redmine等,以支持更大规模的软件开发和协作。

服务器
购买Aws服务器

登录Aws网站,在search栏搜索EC2

『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第1张图片
创建一个新实例

亚马逊新用户,第一年包括每月免费套餐 AMI 上的 750 小时 t2.micro(在 t2.micro 不可用的区域中则为 t3.micro)实例使用量、30GiB EBS 存储、200 万个输入和输出、1GB 快照,以及 100GB 互联网带宽。

因为我是新用户,所以这里我选择免费套餐内的选项配置

  • 操作系统 (Amazon Linux)
  • 实例类型(t2.micro)
  • 配置秘钥对,新建秘钥(如果之前有存在的秘钥也可以选择之前的)
  • 网络设置-安全区组 (勾选 ssh,https,http)
  • 配置存储 (30G)
    『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第2张图片
    『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第3张图片
    『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第4张图片

『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第5张图片

连接服务器

我们可以选择使用 EC2 Instance Connect 进行连接
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第6张图片
也可以通过SSH客户端使用秘钥连接
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第7张图片
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第8张图片

部署Gitblit服务器
下载Gitblit镜像

从docker hub拉取Gitblit镜像,使用的镜像为jacekkow/gitblit:v1.9.1。

sudo docker pull docker pull jacekkow/gitblit:v1.9.1

『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第9张图片

创建挂载目录

执行以下命令,创建挂载目录

sudo mkdir -p /data/gitblit  &&  cd /data/gitblit/
创建Gitblit容器

执行以下命令,使用docker-cli快速创建Gitblit容器。

 sudo docker run -d --name gitblit \
 --restart always \
 -p 8388:8080 \
 -p 8443:8443  \
 -p 9418:9418  \
 -p 29418:29418  \
 -v /data/gitblit/data:/opt/gitblit-data \
  jacekkow/gitblit:v1.9.1

在这里插入图片描述

在jacekkow/gitblit:v1.9.1容器镜像中,暴露的四个端口分别为8080、8443、9418和29418。它们的含义如下:

  • 8080:Gitblit HTTP服务器监听的端口,用于提供基于Web的Git仓库浏览器和管理界面。
  • 8443:Gitblit HTTPS服务器监听的端口,用于提供基于Web的Git仓库浏览器和管理界面,且所有的通信都是加密的。
  • 9418:Git协议的默认端口,用于Git客户端与Git服务器之间的通信。
  • 29418:Gitblit的SSH协议访问端口,用于加密传输Git仓库数据,提供更高级别的安全性。
检查Gitblit容器状态

检查Gitblit容器状态,确保Gitblit容器正常启动。

sudo docker ps

在这里插入图片描述

访问Gitblit服务器
放行端口

进入AWS服务器中,进入实例控制台,选择安全选项,选择入站规则中的安全组
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第10张图片
编辑入站规则,放行8388/8443/9418/29418端口。
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第11张图片

访问Gitblit服务器

http访问:http://弹性公网IP地址:8388

https访问:https://弹性公网IP地址:8443

默认账号密码admin/admin

『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第12张图片

基本使用
创建仓库

在右上角的设置菜单中,点击创建版本库。
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第13张图片
设置版本库名称,选择访问策略,其余根据需要自定义配置即可。
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第14张图片
『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第15张图片

推送代码到GitBlit服务器
  • 克隆代码服务器的代码
    『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第16张图片
  • 创建文件,并提交
echo "test"  > test.txt

git add .

git commit -m 'test'
  • 推送代码到GitBlit服务器
git push

『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第17张图片

  • 查看Gitblit服务器
    查看Gitblit服务器的my-gitblit版本仓库,可以看到测试文件已经成功上传。
    『亚马逊云科技产品测评』活动征文 | 基于Aws部署Gitblit服务器_第18张图片
    这样,就搭建了一个Gitblit服务器,配置安装还是比较简单的。如果你也想要搭建一个Gitblit服务器的话,可以参考本文。

你可能感兴趣的:(科技,aws,服务器)