Docker-compose部署 gitlab-server

Gitlab部署文档

1、配置环境变量

bash 复制代码
export GITLAB_HOME=/srv/gitlab

2、创建docker-compose.yml文件

  • 修改http端口需要同步修改external_url
  • 修改ssh端口需要同步修改gitlab_rails['gitlab_shell_ssh_port']
  • volumes:容器数据的持久化存储,强烈推荐。除非你希望重启容器就将Gitlab重置
yaml 复制代码
version: '3.6'
services:
  web:
    image: 'registry.gitlab.cn/omnibus/gitlab-jh:latest'
    restart: always
    # 云服务器ip
    hostname: '0.0.0.0' 
    environment:
      # 云服务器地址
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://0.0.0.0:8989' 
        gitlab_rails['gitlab_shell_ssh_port'] = 2222 
    ports:
      # 这里两个端口号都需要改
      - '8989:8989' 
      - '443:443'
      # 修改ssh端口号,需要同步修改gitlab_shell_ssh_port
      - '2222:22' 
    volumes:
      - '$GITLAB_HOME/config:/etc/gitlab'
      - '$GITLAB_HOME/logs:/var/log/gitlab'
      - '$GITLAB_HOME/data:/var/opt/gitlab'
    shm_size: '256m'

使用docker compose up -d 启动

3、获取超级管理员账号密码

方案一:系统自动生成的密码
  • 自动生成的密码只有24小时的保留期限

  • 进入容器内部:docker exec -it ah69c7j89k3f /bin/bash

  • 查看初始密码:cat /etc/gitlab/initial_root_password

  • 以该方法登录后需要修改管理员密码
方案二:重置root密码
  • 如果使用方案一登录无效,则需要使用方案二重置root密码后登录。参考官方文档

进入容器内部:docker exec -it be28b6c5223f /bin/bash

进入rails控制台: gitlab-rails console

查找到root用户:user = User.find_by_username "root"

重置密码:user.password="自己设置一个密码"

保存:user.save!

方案三:重置root密码
bash 复制代码
docker exec -it ah69c7j89k3f /bin/bash
# su - git
$ gitlab-rake "gitlab:password:reset[root]"
Enter password: 
Confirm password: 
Unable to change password of the user with username root.
Password must not contain commonly used combinations of words and letters
$ gitlab-rake "gitlab:password:reset[root]"
Enter password: 
Confirm password: 
Password successfully updated for user with username root.
$
相关推荐
cleble18 分钟前
(转)使用DockerCompose部署微服务
docker
HalukiSan35 分钟前
如何提交PR
git·gitlab·github
朱杰jjj2 小时前
Docker容器中无法使用vim、vi命令处理
docker·容器·vim
东林牧之3 小时前
CICD[软件安装]:docker安装gitlab
docker·容器·gitlab
东林牧之3 小时前
CICD[导航]、docker+gitlab+harbor+jenkins从安装到部署
docker·gitlab·jenkins
cui_hao_nan12 小时前
Docker后端部署
运维·docker·容器
大苏打seven13 小时前
Docker学习笔记:Docker网络
笔记·学习·docker
小张是铁粉13 小时前
docker在Linux的安装遇到的问题
linux·docker·容器
没有名字的小羊15 小时前
8.Docker镜像讲解
运维·docker·容器·tomcat
企鹅侠客18 小时前
实践篇:14-构建 Node.js 应用程序镜像
docker·node.js·dockerfile