【Docker项目实战】使用Docker部署Gitblit服务器

举报
江湖有缘 发表于 2025/04/03 16:06:31 2025/04/03
【摘要】 【Docker项目实战】使用Docker部署Gitblit服务器


一、Gitblit介绍

1.1 Gitblit 介绍

Gitblit 是一个完全开源的纯 Java 软件,专注于为 Git 提供一个全面的解决方案,涵盖存储库管理、代码浏览以及通过多种协议的服务提供。作为一个纯 Java 应用程序,Gitblit 非常适合那些已经拥有 Java 环境的企业或团队使用,它能够无缝集成到现有的基础设施中。

1.2 主要特点

  1. 开源与免费

    • Gitblit 基于 Apache License 2.0 协议发布,这意味着它可以被自由地使用、修改和分发,对于中小企业和个人开发者来说是一个成本效益高的选择。
  2. 多协议支持

    • 支持通过 GIT、HTTP 和 SSH 这三种传输协议来服务 Git 存储库,提供了灵活的选择以适应不同的网络环境和安全要求。
  3. 用户友好的管理界面

    • 提供了一个基于 Web 的管理控制台,使得管理员可以轻松地进行用户管理、权限设置、存储库创建等操作。
  4. 代码浏览与搜索

    • 内置了强大的代码浏览功能,允许用户查看提交历史、分支信息、文件内容以及差异比较等。此外,还支持代码搜索功能,便于快速定位所需代码片段。
  5. 集成性

    • Gitblit 可以很容易地与现有的工具链集成,例如 Jenkins、Redmine 等,增强了持续集成和项目管理的能力。
  6. 轻量级部署

    • 由于是纯 Java 开发,Gitblit 不仅跨平台(Windows、Linux、macOS),而且对硬件资源的要求较低,适合各种规模的团队使用。
  7. 安全性

    • 提供了详细的权限控制机制,可以针对不同的用户或用户组设定访问权限,保护代码的安全性和隐私性。
  8. 插件系统

    • Gitblit 支持插件扩展,可以根据需要增加额外的功能,比如与第三方认证系统的集成等,提高了灵活性和可定制性。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。

hostname IP地址 操作系统版本 Docker版本 部署项目
jeven01 192.168.3.88 Ubuntu 22.04.1 LTS 27.1.1 Gitblit

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Gitblit服务器。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven01:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2025-04-02 05:59:08 UTC; 4min 6s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 906 (dockerd)
      Tasks: 29
     Memory: 143.2M
        CPU: 1.172s
     CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven01:~# docker compose version
Docker Compose version v2.19.1

四、下载Gitblit镜像

拉取Gitblit镜像,拉取相关镜像如下所示:

root@jeven01:~# docker pull registry.cn-hangzhou.aliyuncs.com/jeson/gitblit:v1.9.1
v1.9.1: Pulling from jeson/gitblit
57df1a1f1ad8: Pull complete
71e126169501: Pull complete
1af28a55c3f3: Pull complete
a9777c2d5c29: Pull complete
9248106993db: Pull complete
1f74ab5b5b3e: Pull complete
f33944599fe3: Pull complete
3ec5e998e40a: Pull complete
3a0313c9dd93: Pull complete
f2c7438691bf: Pull complete
Digest: sha256:d683b5e04f737315f047baec795d70bb21fa1a0ef8a8956044694f96c6c2f677
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/jeson/gitblit:v1.9.1
registry.cn-hangzhou.aliyuncs.com/jeson/gitblit:v1.9.1

五、部署Gitblit应用

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/gitblit/data &&  cd /data/gitblit

5.2 编辑部署文件

在`部署目录下,创建docker-compose.yaml文件,如下所示:

vim docker-compose.yaml
version: '3.9'
services:
    gitblit:
        image: 'registry.cn-hangzhou.aliyuncs.com/jeson/gitblit:v1.9.1'
        volumes:
            - '/data/gitblit/data:/opt/gitblit-data'
        ports:
            - '29418:29418'
            - '9418:9418'
            - '8443:8443'
            - '8088:8080'
        restart: always
        container_name: gitblit

5.3 创建Gitblit容器

执行以下命令,创建Gitblit容器。

root@jeven01:/data/gitblit# docker compose up -d
[+] Running 2/2
 ✔ Network gitblit_default  Created                                                                                                               0.1s
 ✔ Container gitblit        Started                                                                                                               0.2s

在这里插入图片描述

5.4 查看Gitblit容器状态

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

root@jeven01:/data/gitblit# docker compose ps
NAME                IMAGE                                                    COMMAND                SERVICE             CREATED             STATUS         PORTS
gitblit             registry.cn-hangzhou.aliyuncs.com/jeson/gitblit:v1.9.1   "/bin/sh -c /run.sh"   gitblit             3 minutes ago       Up 3 minutes        0.0.0.0:8443->8443/tcp, :::8443->8443/tcp, 0.0.0.0:9418->9418/tcp, :::9418->9418/tcp, 0.0.0.0:29418->29418/tcp, :::29418->29418/tcp, 0.0.0.0:8088->8080/tcp, :::8088->8080/tcp

5.5 检查Gitblit容器日志

检查Gitblit容器日志,确保Gitblit服务正常启动。

docker compose logs 

在这里插入图片描述

六、访问Gitblit服务

6.1 http访问效果

浏览器地址: http://<个人的服务器IP>:8088,访问Gitblit服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

登录Gitblit首页,默认账号密码如下:

  • 默认账号:admin
  • 默认密码:admin

在这里插入图片描述
在这里插入图片描述

6.2 https访问效果

浏览器地址: https://<个人的服务器IP>:8443,使用https方式访问Gitblit服务的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述
在这里插入图片描述

七、总结

通过本次实战,我们学习了如何使用 Docker 快速部署 Gitblit 服务器,体验了从环境配置到服务访问的全过程,验证了 Docker 在简化应用部署方面的强大功能。此次实践不仅帮助我们掌握了 Gitblit 的部署方法,同时也提升了对 Docker 和 Docker Compose 工具链的应用能力。未来,我们可以基于此基础进一步探索更多高级配置,如安全增强、性能优化等,以满足不同的业务需求。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。