DevOps/GitLab
ubuntu에 GitLab을 설치해보자
yscho03
2022. 2. 22. 18:07
728x90
반응형
gitlab 설치
1. 리눅스 필수 패키지 설치
root@master:~# apt update
root@master:~# apt-get install -y ca-certificates curl openssh-server
2. gitlab-ce 리포지토리 추가
root@master:~# curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
root@master:~# cat /etc/apt/sources.list.d/gitlab_gitlab-ce.list
# this file was generated by packages.gitlab.com for
# the repository at https://packages.gitlab.com/gitlab/gitlab-ce
deb https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/ubuntu/ focal main
3. gitlab-ce 설치
root@master:~# apt-get install -y gitlab-ce
우와~ 설치 완료시 아래와 같은 로고 마크가 나옵니다.
*. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,***,,,,
,*,.
_______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/
4. gitlab 설정 변경
- external_url : 외부에서 접속할 도메인을 적는다.
- time_zone : 우리나라 시간 타임존으로 변경한다.
- git_data_dirs : gitlab에서 저장할 데이터 경로를 명시적으로 지정해준다.
- nginx 설정 : SSL 설정을 해준다.
vi /etc/gitlab/gitlab.rb
----------------------------------------------------
# 33번째 라인
external_url 'https://example.com'
# 68번째 라인
gitlab_rails['time_zone'] = 'Asia/Seoul'
# 642번째 라인
git_data_dirs({
"default" => {
"path" => "/data/git-data"
}
})
# 1398번째 라인
nginx['redirect_http_to_https'] = true
# 1413번째 라인 (SSL 설정)
nginx['ssl_certificate'] = "/etc/gitlab/ssl/default_ssl_certificate.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/default_ssl_certificate.key"
----------------------------------------------------
참고로 아래와 같은 구성으로 되어 있으므로 각각 다른 포트로 구성시 external_url, puma등 충돌이 안 발생하도록 설정해야한다.
5. gitlab 설정 적용
gitlab.rb 설정 파일을 변경 시에는 반드시 reconfigure 명령어를 사용하여 적용시켜주어야 합니다.
root@master:~# gitlab-ctl reconfigure
6. gitlab 시작
root@master:~# gitlab-ctl start
7. gitlab 루트 비밀번호 변경
초기 비밀번호를 알지 못하여 아래와 같은 console로 접속하여 변경시켜 주었습니다.
root@master:/var/opt/gitlab/nginx/logs# gitlab-rails console -e production
--------------------------------------------------------------------------------
Ruby: ruby 2.7.5p203 (2021-11-24 revision f69aeb8314) [x86_64-linux]
GitLab: 14.7.3 (293f6bb322b) FOSS
GitLab Shell: 13.22.2
PostgreSQL: 12.7
--------------------------------------------------------------------------------
Loading production environment (Rails 6.1.4.4)
irb(main):001:0> user=User.where(id:1).first
=> #<User id:1 @root>
irb(main):002:0> user.password='1q2w3e4r'
=> "1q2w3e4r"
irb(main):003:0> user.password_confirmation='1q2w3e4r'
=> "1q2w3e4r"
irb(main):004:0> user.save
=> true
8. gitlab 접속
external_url에 설정한 주소로 브라우저로 접속을 합니다. 초기화 한 root 비밀번호 로그인해봅니다.
728x90
반응형