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

概述

gitlab 是一个开源的仓库管理系统,利用 git 作为代码管理工具,并在此基础上构建了 web 服务。与 github 类似,gitlab 也是一个仓库管理系统,但不同之处在于,gitlab 可以自行搭建,供个人或企业内部使用。

环境准备

  • 操作系统linux
  • 工具docker、Docker Compose
  • 硬件要求
    • CPU:推荐最低4核,支持最多500个用户;8核可支持最多1000个用户。
    • RAM:最低需要4GB,支持最多500个用户;8GB可支持最多1000个用户。

安装 GitLab Docker 镜像

GitLab Docker 镜像可以通过多种方式运行,以下介绍两种主要方法:

1. 使用 Docker 引擎安装 GitLab

首先,拉取镜像。截至2022年5月,gitlab/gitlab-ce的最新版本镜像大小为2.36GB,建议提前下载。

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

使用以下命令运行 Docker 容器:

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 容器后,发布访问 sshhttphttps 所需的端口。GitLab 初始化启动过程可能需要较长时间,可以通过以下命令跟踪启动过程:

docker logs -ft gitlab

容器启动后,通过浏览器访问 gitlab.admin.com:81。如果域名未进行 hosts 映射,请使用 IP 地址,例如 192.168.200.11:81。

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

使用以下命令查询 GitLab 默认创建的 root 用户和密码:

docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

输入 root 用户(管理员)和密码进行登录:

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

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

2. 使用 Docker Compose 安装 GitLab

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

首先,安装 Docker Compose,并创建 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'

确保 docker-compose.yml 文件与启动 GitLab 命令位于同一目录中,然后使用以下命令启动:

docker-compose up -d

查看 Compose 状态:

[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

启动后,通过浏览器访问并登录:

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

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享