【1】CICD持续集成-docker本地搭建gitlab代码仓库社区版

‌一、gitlab社区版概述

GitLab社区版(Community Edition, CE)是一个开源的版本控制系统,适用于个人开发者、中小团队及大型企业。‌ GitLab社区版采用MIT许可证,用户可以免费使用和修改源代码。其主要功能包括代码托管、版本控制、项目协作、代码审查以及集成CI/CD等‌。

主要功能

‌. 代码托管和版本控制‌:GitLab社区版提供了基本的代码托管和版本控制功能,适合个人或小型团队使用‌。

‌. 项目协作‌:支持多人协作,包括任务管理、问题跟踪和代码审查等功能‌。

‌CI/CD集成‌:提供持续集成和持续部署(CI/CD)功能,支持多环境部署(Dev/Stage/Prod)‌。

.‌ 安全性‌:内置安全扫描工具,满足基本的安全需求‌

‌. 权限管理‌:支持对团队成员的访问权限控制,确保代码的安全性和合规性‌。
适用场景‌

. 中小团队‌:社区版功能齐全,适合中小团队进行代码托管和基础DevOps需求‌。

.‌ 教育领域和开源项目‌:由于其免费且功能全面的特点,在教育和开源项目中广受欢迎‌。

‌. 个人开发者‌:个人开发者可以免费使用所有核心功能,进行项目管理和代码托管‌

二、准备工作

确保已安装 Docker 和 Docker Compose。

安装 Docker:安装指南

安装 Docker Compose(参考上面安装指南)

确保服务器资源充足(建议至少 4GB 内存,2 核 CPU)。

三、安装gitlab

3.1 创建工作目录

bash 复制代码
cd /opt
mkdir gitlab
cd gitlab
mkdir -p {data,config,logs}

3.2 写入docker-compose.yml

bash 复制代码
cd /opt/gitlab
cat > docker-compose.yml << EOF
version: '3'
services:
  gitlab:
    image: gitlab/gitlab-ce:16.11.0-ce.0
    container_name: gitlab
    hostname: 192.168.1.23
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url='http://192.168.1.23:88'
        gitlab_rails['initial_root_password'] = '修改设置的初始密码'
    ports:
      - "88:80"
      - "1443:443"
      - "55:22"
    networks:
      - gitlab-network
    volumes:
      - /opt/gitlab/config:/etc/gitlab
      - /opt/gitlab/logs:/var/log/gitlab
      - /opt/gitlab/data:/var/opt/gitlab
    shm_size: '256m'
networks:
  gitlab-network:
    driver: bridge
EOF

三、验证安装

bash 复制代码
cd /opt/gitlab
docker-compose ps #查看安装进度
docker-compose logs -f gitlab # 查看日志

四、安装成功效果:

相关推荐
程序员老赵30 分钟前
Docker 部署 WordPress:轻松搭建开源内容管理平台
docker·开源·wordpress
sbjdhjd2 小时前
云安全 | 从特权容器到旧版 runC:Docker 宿主机访问与运行时缺陷复盘
运维·网络安全·docker·云原生·kubernetes·云计算·云安全
Pocker_Spades_A3 小时前
Penpot自托管设计协作:Docker部署、MCP接入与Codex生成UI实操记录
ui·docker·容器
Lvan的前端笔记13 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
sbjdhjd18 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
帷幕落秋20 小时前
Docker的两种安装
运维·docker·容器
工业一体机老司机20 小时前
工业一体机选购后的系统部署:Ubuntu下Docker容器化运行与GPIO配置
linux·ubuntu·docker·人机交互
姜鱼问生1 天前
docker exec 排查容器问题:从日志到进程
运维·网络·数据库·docker·容器
Fan_5581 天前
4核8G云服务器部署GitLab内存耗尽解决方案
gitlab