gitlab 使用docker-compose代替docker安装gitlab

简介: gitlab 使用docker-compose代替docker安装gitlab

**

记录一次使用docker安装gitlab后的项目clone地址问题解决方案: 可以使用docker-compose代替docker安装

**

问题:
1、gitlab搭建好之后,创建项目的clone地址端口号不正确;
2、docker安装的gitlab通过后续配置解决上述问题后,docker restart gitlab后又还原了(万一服务器需要重启,则需要重新配置);

一、docker搭建gitlab:

1、拉取镜像,时间较长

docker pull gitlab/gitlab-ce

2、创建待挂载目录(如果没有创建,运行容器时会自动创建)

mkdir -p /usr/local/gitlab/{
   
   config,logs,data}

3、没有域名的可以使用服务器IP地址

docker run \
-d \
--privileged=true \
--hostname code.bsapo.com \
-p7001:443 -p7002:80 -p7003:22 \
--name gitlab \
--restart always \
-v /usr/local/gitlab/config:/etc/gitlab  -v /usr/local/gitlab/logs:/var/log/gitlab -v /usr/local/gitlab/data:/var/opt/gitlab  \
gitlab/gitlab-ce

不换行(直接复制):

docker run -d --privileged=true --hostname code.bsapo.com  -p7001:443 -p7002:80 -p7003:22 --name gitlab --restart always -v /usr/local/gitlab/config:/etc/gitlab  -v /usr/local/gitlab/logs:/var/log/gitlab -v /usr/local/gitlab/data:/var/opt/gitlab   gitlab/gitlab-ce

4、添加配置:(ssh克隆地址)

echo "gitlab_rails['gitlab_shell_ssh_port'] = 7003" >> /usr/local/gitlab/config/gitlab.rb
docker exec -it gitlab bash
gitlab-ctl  reconfigure   # 这步时间会有点长
gitlab-ctl restart

发现ssh的clone地址由 ssh://git@code.bsapo.com:front/eee.git
变成了ssh://git@code.bsapo.com:==7003==/front/eee.git

5、然后修改http的clone地址

vi  /usr/local/gitlab/data/gitlab-rails/etc/gitlab.yml

在这里插入图片描述
修改如下:
gitlab修改http地址

docker  exec  -it  gitlab  bash 
gilab-ctl   restart     # 直接restart即可,这里不能reconfigure,否则很可能会导致无法启动;

==OK大功告成!但是:
如果以后服务器需要重启,此配置会还原,那么就需要这样手动修改http的clone地址了,非常麻烦;==

二、docker-compose 搭建gitlab:

mkdir /usr/local/gitlab
cd /usr/local/gitlab
touch docker-compose.yml  # 内容如下

version: '3'
services:
  gitlab:
    restart: always
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    hostname: 'code.bsapo.com'         # 也可以使用IP地址
    privileged: true
    environment:
      TZ: 'Asia/Shanghai'
      GITLAB_OMNIBUS_CONFIG: |
        gitlab_rails['time_zone'] = 'Asia/Shanghai'
        external_url 'http://code.bsapo.com:7002'       #http地址
        gitlab_rails['gitlab_shell_ssh_port'] = 7003    #ssh地址端口
    ports:
      - '7001:443'
      - '7002:7002'      # 注意这里不是80  与上面external_url自定义端口保持一致
      - '7003:22'

    volumes:             # 宿主机地址若没有,会自动创建目录
      - /usr/local/gitlab/mount/config:/etc/gitlab
      - /usr/local/gitlab/mount/log:/var/log/gitlab
      - /usr/local/gitlab/mount/data:/var/opt/gitlab

在当前目录下执行:

docker-compose  up  -d

大概一两分钟后,状态就会变为:healthy
在这里插入图片描述
启动后创建项目,检查地址:
gitlab的clone地址

docker restart gitlab 之后,地址依然正常!

相关文章
|
8天前
|
Docker 容器
Docker安装及镜像源修改
本文介绍了Docker的安装过程和如何修改Docker镜像源以加速下载。包括更新系统包、安装所需软件包、设置yum源、安装Docker以及验证安装是否成功。接着,提供了修改Docker镜像源的步骤,包括创建配置文件、编辑配置文件以设置镜像加速地址,并提供了几个常用的国内镜像源地址。最后,通过重启Docker服务和检查配置是否生效来完成镜像源的修改。
Docker安装及镜像源修改
|
9天前
|
Docker 容器
centos7.3之安装docker
centos7.3之安装docker
|
1月前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
1月前
|
Ubuntu Linux Docker
Ubuntu 18.04 安装Docker实战案例
关于如何在Ubuntu 18.04系统上安装Docker的实战案例,包括安装步骤、配置镜像加速以及下载和运行Docker镜像的过程。
161 3
Ubuntu 18.04 安装Docker实战案例
|
1月前
|
存储 Linux Docker
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
关于如何在CentOS 7.6上安装Docker、介绍Docker存储引擎以及服务进程关系的实战案例。
93 3
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
|
19天前
|
Prometheus 监控 Cloud Native
docker安装prometheus+Granfan并监控容器
【9月更文挑战第14天】本文介绍了在Docker中安装Prometheus与Grafana并监控容器的步骤,包括创建配置文件、运行Prometheus与Grafana容器,以及在Grafana中配置数据源和创建监控仪表盘,展示了如何通过Prometheus抓取数据并利用Grafana展示容器的CPU使用率等关键指标。
|
2月前
|
Shell Docker 容器
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
|
2月前
|
Ubuntu Docker 索引
2024年最新版 Ubuntu 20+ 上安装 Docker
这篇文章提供了在Ubuntu 20+版本上安装Docker的详细步骤,包括更新软件包索引、安装依赖包、添加Docker官方GPG密钥、设置Docker稳定版仓库、安装Docker CE以及验证安装是否成功,并指导如何将用户添加到docker组以非root用户身份运行Docker。
|
2月前
|
存储 搜索推荐 应用服务中间件
深入探索Docker 安装 Tomcat
【8月更文挑战第26天】
44 4
|
2月前
|
NoSQL Redis 数据安全/隐私保护
深入探索利用Docker安装Redis
【8月更文挑战第27天】
91 2
下一篇
无影云桌面