【GitLab】使用Docker和Docker-Compose部署-个人、私有代码仓库

简介: GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。GitLab和GitHub一样是仓库管理系统,不一样的是GitLab可以自己搭建,自己或企业内部使用。

概述

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。
GitLab和GitHub一样是仓库管理系统,不一样的是GitLab可以自己搭建,自己或企业内部使用。

环境准备

硬件要求

CPU

  • 4 核推荐的最小核数,最多支持 500 个用户
  • 8核最多支持1000个用户

RAM

  • 4GB RAM是所需的最小内存大小,最多可支持 500 个用户
  • 8GB RAM 支持多达 1000 个用户

安装

GitLab Docker 镜像可以以多种方式运行:这里介绍前面2种

  • 使用 Docker 引擎
  • 使用 Docker-compose
  • 使用 Docker swarm集群模式

1.docker引擎安装gitlab

  • 拉取镜像,目前2022年5月,gitlab/gitlab-ce最新版docker镜像2.36GB(有点大可以提前下载)

在这里插入图片描述

  • 下载并启动 GitLab 容器,并发布访问 SSH、HTTP 和 HTTPS 所需的端口。所有 GitLab 数据都将存储为 /mydata/
docker run --detach \
  --hostname gitlab.admin.com \
  --publish 1443:443 --publish 81:80 --publish 1022:22 \
  --name gitlab \
  --restart always \
  --volume /mydata/config:/etc/gitlab \
  --volume /mydata/logs:/var/log/gitlab \
  --volume /mydata/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest
本地位置 容器位置 用法
/mydata/data /var/opt/gitlab 用于存储应用程序数据
/mydata/logs /var/log/gitlab 用于存储日志
/mydata/config /etc/gitlab 用于存储 GitLab 配置文件
  • GitLab初始化启动过程需要很长时间,您可以通过logs方式跟踪此过程:
docker logs -ft gitlab
  • 启动容器后,浏览器访问gitlab.admin.com:81,这里如果域名没做hosts映射的话,请使用ip地址:192.168.200.11:81

**插入图片**

  • 这里GitLab 默认创建root用户和密码,root用户 密码查询
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
  • 输入root用户(管理员)和密码登录:

在这里插入图片描述

在这里插入图片描述

2.使用 Docker Compose 安装 GitLab---*(compose案例看这里!!)

使用Docker Compose,您可以轻松配置、安装和升级 GitLab :

  1. 安装 Docker Compose
  2. 创建docker-compose.yml文件
version: '3.6'
services:
  web:
    image: 'gitlab/gitlab-ce:latest'
    restart: always
    hostname: 'gitlab.admin.com'
    ports:
      - '82:80'
      - '10443:443'
      - '11022:22'
    volumes:
      - '/mydata-2/config:/etc/gitlab'
      - '/mydata-2/logs:/var/log/gitlab'
      - '/mydata-2/data:/var/opt/gitlab'
  1. 确保您docker-compose.yml与启动 GitLab 位于同一目录中:
  • 后台启动compose
docker-compose up -d
  • 查看状态
[root@master cicd]# docker-compose ps
   Name          Command          State                                     Ports
---------------------------------------------------------------------------------------------------------------
cicd_web_1   /assets/wrapper   Up (healthy)   0.0.0.0:11022->22/tcp, 0.0.0.0:10443->443/tcp, 0.0.0.0:82->80/tcp
  • 浏览器访问登录

在这里插入图片描述

目录
相关文章
|
6天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
55 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
17天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
58 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
7天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
7天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
17 1
|
7天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
28 0
|
JSON Shell Linux
docker学习(四)--仓库
docker中仓库使用
692 0
|
5天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
25 2
|
安全 网络安全 Docker
docker学习(8) 在mac机上搭建私有仓库
docker的私有仓库类似maven的私服,一般用于公司内部搭建一个类似docker hub的环境,这样上传、下载镜像速度较快,本文将演示如何在mac上利用docker-machine搭建无需SSL证书的私有仓库。
1611 0