笑看天下无敌手 发表于 2024-7-20 17:57:10

【Git管理工具】使用Docker部署GitLab服务器

一、GitLab先容

1.1 GitLab简介

   1.GitLab是一款基于Git的开源代码托管平台,提供版本控制功能、代码检察、问题跟踪、CI/CD等一系列项目管理工具。
2.使用GitLab可以轻松管理团队中的开辟者,举行代码的协作开辟和管理。GitLab也提供了丰富的项目集成和API,可以让开辟者更快地举行集成和部署。
3.相比其他雷同平台的优势在于其官方提供了完整的容器部署方案,并可以与Kubernetes等容器编排平台集成,使其更加易于管理和扩展。
1.2 GitLab特点

   1.GitLab具有完整的代码管理和自动化化构建、测试和部署工具,以及安全性和DevOps特性,是一个强盛的团队协作工具和软件开辟平台。
2.GitLab是一个基于Web的Git堆栈管理工具,具有以下特点:


[*] 代码堆栈管理:GitLab能够管理团队的代码堆栈,包罗版本控制、分支管理、合并哀求等。
[*] 代码托管:GitLab提供了一个完整的Git代码托管解决方案,支持从私有服务器到公共托管服务,满足差异团队的需求。
[*] CI/CD工具:GitLab提供了内置的持续集成和持续交付工具,可以实现自动化构建、测试和部署,并提供了强盛的管道编辑器和测试报告。
[*] 安全管理:GitLab支持用户权限分配、角色管理、双因素身份验证、代码扫描和安全毛病报告等功能,包管代码的安全性。
[*] DevOps平台:GitLab提供了全面的DevOps解决方案,可以资助团队协作、提高效率、加快交付,从而推动业务的增长和创新。
二、本次实践先容

2.1 本地环境规划

   本次实践为个人测试环境,操纵系统版本为centos7.6。
hostnameIP地址操纵系统版本Docker版本docker192.168.3.127centos 7.624.0.2 2.2 本次实践先容

   1.本次实践部署环境为个人测试环境,生产环境请审慎使用;
2.在Docker环境下乐成部署GitLab服务器。
三、本地环境检查

3.1 检查Docker服务状态

   检查Docker服务是否正常运行,确保Docker正常运行。
# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
   Active: active (running) since Sun 2023-08-27 09:22:02 CST; 6 days ago
   Docs: https://docs.docker.com
Main PID: 6082 (dockerd)
    Tasks: 17
   Memory: 833.9M
3.2 检查Docker版本

   检查Docker版本
# docker version
Client: Docker Engine - Community
Version:         24.0.2
API version:       1.43
Go version:      go1.20.4
Git commit:      cb74dfc
Built:             Thu May 25 21:55:21 2023
OS/Arch:         linux/amd64
Context:         default

Server: Docker Engine - Community
Engine:
Version:          24.0.2
API version:      1.43 (minimum version 1.12)
Go version:       go1.20.4
Git commit:       659604f
Built:            Thu May 25 21:54:24 2023
OS/Arch:          linux/amd64
Experimental:   false
containerd:
Version:          1.6.21
GitCommit:      3dce8eb055cbb6872793272b4f20ed16117344f8
runc:
Version:          1.1.7
GitCommit:      v1.1.7-0-g860f061
docker-init:
Version:          0.19.0
GitCommit:      de40ad0
3.3 检查docker compose 版本

   检查Docker compose版本,确保2.0以上版本。
# docker compose version
Docker Compose version v2.18.1
三、Docker CompseV2版本升级(可选)

3.1 创建目次

   新建目次
DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}
mkdir -p $DOCKER_CONFIG/cli-plugins
3.2 下载Docker CompseV2二进制包

   下载Docker CompseV2二进制包

curl -SL https://github.com/docker/compose/releases/download/v2.19.1/docker-compose-linux-x86_64 -o $DOCKER_CONFIG/cli-plugins/docker-compose
3.3 文件权限授权

   下载的docker compose二进制文件举行授权。
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
3.4 查看docker compose版本

   查看docker compose版本
# docker compose version
Docker Compose version v2.19.1
四、下载GitLab镜像

   从docker hub下载GitLab镜像
# docker pull gitlab/gitlab-ce:latest
latest: Pulling from gitlab/gitlab-ce
7b1a6ab2e44d: Already exists
6c37b8f20a77: Pull complete
f50912690f18: Pull complete
bb6bfd78fa06: Pull complete
2c03ae575fcd: Pull complete
839c111a7d43: Pull complete
4989fee924bc: Pull complete
666a7fb30a46: Pull complete
Digest: sha256:5a0b03f09ab2f2634ecc6bfeb41521d19329cf4c9bbf330227117c048e7b5163
Status: Downloaded newer image for gitlab/gitlab-ce:latest
docker.io/gitlab/gitlab-ce:latest
五、部署GitLab服务器

5.1 创建目次



[*]创建以下目次,进入/data/gitlab/中。
mkdir -p /data/gitlab/{data,logs,config}&& cd /data/gitlab/
5.2 编辑docker-compose.yaml文件

   编辑docker-compose.yaml文件
vim /data/gitlab/docker-compose.yml
version: "3"
services:
gitlab:
    container_name: gitlab
    image: gitlab/gitlab-ce:latest
    hostname: '192.168.3.127'
    restart: always
    ports:
      - 8011:8011
      - 8443:443
      - 2222:22/tcp
    volumes:
      - /etc/localtime:/etc/localtime
      - /data/gitlab/data:/var/opt/gitlab
      - /data/gitlab/config:/etc/gitlab
      - /data/gitlab/logs:/var/log/gitlab
    environment:
      GITLAB_OMNIBUS_CONFIG: |
      external_url 'http://192.168.3.127:8011'
      gitlab_rails['gitlab_shell_ssh_port'] = 2222
    deploy:
      resources:
      limits:
         memory: 4G
      reservations:
         memory: 1G
   
5.3 部署GitLab

   使用docker compose 快速部署GitLab
docker compose up -d
https://img-blog.csdnimg.cn/521da177084f4dc0a6ce94f754a1ee30.png
5.4 查看容器状态

   J检查容器运行状态
# docker ps
CONTAINER ID   IMAGE                     COMMAND             CREATED          STATUS                           PORTS                                                                      NAMES
9e815d9727fa   gitlab/gitlab-ce:latest   "/assets/wrapper"   16 seconds ago   Up 14 seconds (health: starting)   80/tcp, 0.0.0.0:8011->8011/tcp, :::8011->8011/tcp, 0.0.0.0:2222->22/tcp, :::2222->22/tcp, 0.0.0.0:8443->443/tcp, :::8443->443/tcp   gitlab
六、访问gitlab堆栈

6.1 进入GitLab登录页

   访问地址:http://192.168.3.127:8011/
将IP地址替换为自己服务器IP地址
https://img-blog.csdnimg.cn/f0e48fcbfa634f0eafcbc7ddfadb45f3.png
6.2 重置登录暗码



[*]进入容器内部
# docker exec -it gitlab /bin/bash
root@192:/#


[*]进入控制台
gitlab-rails console -e production


[*]查询超等管理用户
user = User.where(id:1).first
https://img-blog.csdnimg.cn/4e7bcf040d2648d8ab20f548687bdbb2.png


[*]修改暗码
user.password='admin36987'


[*]保存与退出
# 保存
user.save!
# 退出
exit
https://img-blog.csdnimg.cn/aca68670640949fe99ed04e20d86c075.png
6.3 访问GitLab首页

   修改后的账号暗码为root/admin36987
https://img-blog.csdnimg.cn/90800a8f4eb044d08a518905b9254e4a.png
6.4 设置中文语言

   在Preferences页面中,找到“Localization”地区,将“Language”选项修改为“简体中文”。
https://img-blog.csdnimg.cn/77e4d23f0afb4fe7adee2bd6718a7fb9.png
https://img-blog.csdnimg.cn/ba279414f60f46d68d38ed2a89a12e43.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【Git管理工具】使用Docker部署GitLab服务器