如何重置 Docker 里的 gitlab root 用戶密碼

前言

前面的文章《通過 docker 搭建自用的 gitlab 服務(wù)》安裝好了一個(gè) Docker 容器里面的 Gitlab 服務(wù)。當(dāng)時(shí)為了安全,設(shè)置了一個(gè)16位隨機(jī)字符串作為密碼。結(jié)果忘記存下來。現(xiàn)在不記得了。怎么解決呢?

Gitlab 官方有詳細(xì)的重置密碼 的說明。主要是執(zhí)行 Gitlab 的命令進(jìn)入 Gitlab 命令行的控制臺(tái),然后執(zhí)行命令來實(shí)現(xiàn)。但是我們的 Gitlab 是安裝在 Docker里面的,所以現(xiàn)在問題是如何進(jìn)入 Docker 來執(zhí)行 Docker 容器里面的命令。

進(jìn)入 Docker 容器

進(jìn)入 Docker 容器內(nèi)部的方法還是有不少的。這里只是要進(jìn)入 Docker 來執(zhí)行 Docker 容器內(nèi)部的命令,所以我采用了 Docker 內(nèi)置的命令 docker exec 命令的方式來實(shí)現(xiàn)。

首先找出容器的唯一標(biāo)識(shí)

docker ps
顯示運(yùn)行的 docker 容器

然后執(zhí)行下面的命令就進(jìn)入了這個(gè) Docker 容器的命令行環(huán)境。

docker exec -it 7a45cd079bdc /bin/bash

重置 gitlab 密碼

接下來就按照Gitlab 官方有詳細(xì)的重置密碼 的說明執(zhí)行下面的命令

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 了。

后記

雖然問題解決。但是還是把密碼都記好吧。我差點(diǎn)要重裝 gitlab 了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容