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.
$
相关推荐
梁正雄3 小时前
扩展-docker-ovs编译
运维·docker·容器
凯子坚持 c6 小时前
通往Docker之路:从单机到容器编排的架构演进全景
docker·容器·架构
Fuly10247 小时前
使用docker本地部署dify
运维·docker·容器
遇见火星10 小时前
Ubuntu Docker 容器化部署教程
linux·ubuntu·docker
Panda__Panda13 小时前
docker项目打包演示项目(数字排序服务)
运维·javascript·python·docker·容器·c#
xx.ii13 小时前
Docker监控
运维·docker·容器
维尔切14 小时前
Docker 存储与数据共享
运维·docker·容器
温柔一只鬼.14 小时前
Docker快速入门——第四章Docker镜像
运维·docker·容器
程序猿费益洲14 小时前
Docker 网络详解:(三)四大网络模式
网络·docker·容器
一只代码狗14 小时前
Docker Desktop在MAC上无法强制关闭的命令清理方式
macos·docker·php