Synology NAS에서 Docker를 통해 GitLab을 운영하다 보면, 간혹 사용자 비밀번호를 잊어버리거나 재설정해야 하는 상황이 발생할 수 있습니다. 보안상의 이유로 GitLab 컨테이너 내부에서 사용자 비밀번호를 직접적으로 확인하는 것은 불가능하지만, 다음과 같은 방법을 통해 안전하게 비밀번호를 재설정할 수 있습니다.
주의: 아래 방법들은 GitLab gitlab-ee-1
컨테이너를 Docker를 통해 설치한 경우에 해당합니다. Synology 패키지 센터를 통해 설치한 경우에는 접근 방식이 다를 수 있으니, 해당 경우에는 Synology GitLab 패키지 관련 문서를 참조하거나 Synology 지원팀에 문의하시기 바랍니다.
가장 간단한 방법은 GitLab 관리자 계정으로 로그인하여 웹 인터페이스를 통해 사용자 비밀번호를 재설정하는 것입니다.
root
)으로 로그인합니다.이제 해당 사용자는 새로운 비밀번호로 GitLab에 로그인할 수 있습니다.
GitLab 관리자 계정 비밀번호를 잊어버렸거나, 웹 인터페이스 접근 없이 특정 사용자의 비밀번호를 재설정해야 하는 경우에는 Docker 환경에서 GitLab 컨테이너 내부의 Rails 콘솔을 사용하여 비밀번호를 변경할 수 있습니다.
Synology NAS에 SSH로 접속: 터미널 프로그램을 사용하여 Synology NAS의 IP 주소와 관리자 계정 정보를 입력하여 SSH로 접속합니다.
Bashssh <Synology_관리자_계정>@<Synology_IP_주소>
GitLab 컨테이너 ID 또는 이름 확인: 다음 명령어를 실행하여 gitlab-ee-1
컨테이너의 ID 또는 이름을 확인합니다.
sudo docker ps
출력 결과에서 gitlab-ee-1
이라는 이름을 가진 컨테이너의 CONTAINER ID
또는 NAMES
열의 값을 확인합니다.
GitLab 컨테이너 내부로 접속: 확인한 컨테이너 ID 또는 이름을 사용하여 다음 명령어를 실행하여 컨테이너 내부로 접속합니다. <컨테이너_ID_또는_이름>
부분을 실제 컨테이너 ID 또는 이름으로 바꿔주세요.
sudo docker exec -it <컨테이너_ID_또는_이름> bash
예시:
Bashsudo docker exec -it gitlab-ee-1 bash
Rails 콘솔 실행: 컨테이너 내부에서 다음 명령어를 실행하여 GitLab Rails 콘솔을 시작합니다.
Bashgitlab-rails console -e production
Rails 환경이 로드될 때까지 잠시 기다립니다. irb(main):>
프롬프트가 나타나면 Rails 콘솔이 정상적으로 실행된 것입니다.
사용자 찾기 및 비밀번호 재설정: Rails 콘솔에서 다음 Ruby 코드를 사용하여 비밀번호를 재설정합니다. <USERNAME>
부분에는 비밀번호를 재설정하려는 사용자의 사용자 이름을 입력하고, <NEW_PASSWORD>
부분에는 새로운 비밀번호를 입력합니다.
user = User.find_by_username('<USERNAME>')
user.password = '<NEW_PASSWORD>'
user.password_confirmation = '<NEW_PASSWORD>'
user.save!
예시 (사용자 이름이 myuser
이고 새 비밀번호를 newsecret
으로 설정하는 경우):
user = User.find_by_username('myuser')
user.password = 'newsecret'
user.password_confirmation = 'newsecret'
user.save!
정상적으로 비밀번호가 변경되면 콘솔에 true
또는 사용자 정보가 출력됩니다.
Rails 콘솔 종료: 다음 명령어를 입력하여 Rails 콘솔을 종료합니다.
Rubyexit
컨테이너에서 나오기: 다음 명령어를 입력하여 컨테이너에서 빠져나옵니다.
Bashexit
이제 해당 사용자는 설정한 새로운 비밀번호로 GitLab에 로그인할 수 있습니다.
중요:
위 방법들을 통해 Synology NAS의 Docker 환경에서 실행되는 GitLab gitlab-ee-1
컨테이너의 사용자 비밀번호를 안전하게 재설정할 수 있습니다. 문제가 발생하거나 더 궁금한 점이 있다면 언제든지 다시 질문해주세요.
댓글목록
등록된 댓글이 없습니다.