美文网首页Gitlab程序员首页投稿(暂停使用,暂停投稿)
如何重置 Docker 里的 gitlab root 用户密码

如何重置 Docker 里的 gitlab root 用户密码

作者: 阿土伯已经不是我 | 来源:发表于2018-01-05 12:49 被阅读545次

    前言

    前面的文章《通过 docker 搭建自用的 gitlab 服务》安装好了一个 Docker 容器里面的 Gitlab 服务。当时为了安全,设置了一个16位随机字符串作为密码。结果忘记存下来。现在不记得了。怎么解决呢?

    Gitlab 官方有详细的重置密码 的说明。主要是执行 Gitlab 的命令进入 Gitlab 命令行的控制台,然后执行命令来实现。但是我们的 Gitlab 是安装在 Docker里面的,所以现在问题是如何进入 Docker 来执行 Docker 容器里面的命令。

    进入 Docker 容器

    进入 Docker 容器内部的方法还是有不少的。这里只是要进入 Docker 来执行 Docker 容器内部的命令,所以我采用了 Docker 内置的命令 docker exec 命令的方式来实现。

    首先找出容器的唯一标识

    docker ps
    
    显示运行的 docker 容器

    然后执行下面的命令就进入了这个 Docker 容器的命令行环境。

    docker exec -it 7a45cd079bdc /bin/bash
    

    重置 gitlab 密码

    接下来就按照Gitlab 官方有详细的重置密码 的说明执行下面的命令

    gitlab-rails console production
    Loading production environment (Rails 4.2.10)
    irb(main):001:0> user=User.where(id:1).first
    => #<User id:1 @root>
    irb(main):003:0> user.password='9aa9871ouf906'
    => "9aa9871ouf906"
    irb(main):004:0> user.password_confirmation='9aa9871ouf906'          
    => "9aa9871ouf906"
    irb(main):005:0> user.save!
    Enqueued ActionMailer::DeliveryJob (Job ID: 55d5938a-8506-49cc-be8c-6afd666c4efe) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/1
    => true
    irb(main):006:0> 
    

    这样我们就将 root 用户的密码更改为 9aa9871ouf906 了。

    后记

    虽然问题解决。但是还是把密码都记好吧。我差点要重装 gitlab 了。

    相关文章

      网友评论

        本文标题:如何重置 Docker 里的 gitlab root 用户密码

        本文链接:https://www.haomeiwen.com/subject/tuejnxtx.html