πŸ’¬ CI · CD/Git : κΉƒ

[GitLab] CentOS 7에 GitLab (ce) μ„€μΉ˜ν•˜κΈ° - μ˜€ν”„λΌμΈ(μˆ˜λ™) μ„€μΉ˜

mxnxeonx 2023. 4. 11. 16:17
728x90
728x90

GitLab 온라인 μ„€μΉ˜λŠ” 이전에 ν¬μŠ€νŒ…ν–ˆμ—ˆλŠ”λ°, μ•Œ 수 μ—†λŠ” 이유둜 curl λͺ…령을 μ‚¬μš©ν•  수 μ—†μ–΄(무응닡) μ˜€ν”„λΌμΈμœΌλ‘œ μ„€μΉ˜ν•˜κ³ μž μ•Œμ•„λ΄€λ˜ λ‚΄μš©λ“€μ„ μ •λ¦¬ν•œλ‹€. μ˜€ν”„λΌμΈ μ„€μΉ˜λŠ” λ‘œμ»¬μ—μ„œ μ„€μΉ˜ νŒŒμΌμ„ λ°›μ•„ μ„œλ²„μ— λ„£κ³  installν•˜λŠ” 방식이닀. λ•Œλ¬Έμ— 인터넷이 λ˜μ§€ μ•ŠλŠ” μ„œλ²„ ν™˜κ²½μ—μ„œλ„ μ„€μΉ˜κ°€ κ°€λŠ₯ν•˜λ‹€.

 


 

GitLab μ˜€ν”„λΌμΈ μ„€μΉ˜ 방법 (CentOS 7)

GitLab 곡식 ν™ˆνŽ˜μ΄μ§€μ—μ„œ μžμ‹ μ˜ OS(컀널) 버전에 λ§žλŠ” νŒ¨ν‚€μ§€ νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œν•˜κ³  Installν•˜λŠ” 과정이닀.

 

1) μ„€μΉ˜ 파일 λ‹€μš΄λ‘œλ“œ

GitLab ce버전 νŒ¨ν‚€μ§€ λ‹€μš΄λ‘œλ“œ ν™ˆνŽ˜μ΄μ§€μ—μ„œ μžμ‹ μ˜ OS 버전에 λ§žλŠ” νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œν•œλ‹€. λ§Œμ•½ μžμ‹ μ˜ OS 배포판 버전과 ν˜Έν™˜λ˜μ§€ μ•ŠλŠ” GitLab νŒ¨ν‚€μ§€λ₯Ό κ°€μ Έμ˜¨ 경우 μ„€μΉ˜ 쀑 Dependency 라이브러리 뢈일치 λ˜λŠ” 미쑴재둜 인해 μ„€μΉ˜κ°€ λΆˆκ°€ν•˜λ‹€.

 

gitlab/gitlab-ce - Packages · packages.gitlab.com

APT/YUM repository for GitLab Community Edition packages

packages.gitlab.com

 

μ°Έκ³ ) OS 버전 확인

λ§Œμ•½ 본인의 OS 버전을 λͺ¨λ₯Έλ‹€λ©΄ μ„œλ²„μ— μ•„λž˜ λͺ…령어듀을 μž…λ ₯ν•˜μ—¬ 확인할 수 μžˆλ‹€.

1. 컀널 버전 확인

$ uname         # OS 확인(Linux, Windows ...)
$ uname -a      # OS κ΄€λ ¨ λͺ¨λ“  정보 확인
$ uname -r      # 컀널 버전 확인

1. uname

uname λͺ…λ Ή μž…λ ₯μ‹œ λ‚˜μ˜¨ 좜λ ₯값은 컀널 버전.메이저 버전.λ§ˆμ΄λ„ˆ 버전-릴리즈 버전.배포판 버전이닀. 3.10.0-862.el7.x86_64라면 μ•„λž˜μ™€ κ°™λ‹€.

  • 컀널 버전 : 3
  • 메이저 버전 : 10
  • λ§ˆμ΄λ„ˆ 버전 : 0
  • 릴리즈 버전 : 862
  • λ°°ν¬νŒμ—μ„œ μ§€μ •ν•œ 버전 : el7.x86_64

 

2. Linux 배포판 버전 확인

$ lsb-release -a

lsb-release -a λͺ…λ Ή μž…λ ₯μ‹œ 'λͺ…령을 찾을 수 μ—†μŠ΅λ‹ˆλ‹€' μ—λŸ¬ λ°œμƒν•˜λŠ” 경우 μ•„λž˜μ™€ 같이 νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•œλ‹€.

2. lsb_release

μ„€μΉ˜κ°€ μ™„λ£Œλ˜λ©΄ 파일 λ‚΄μš©μ„ 읽어 릴리즈 버전을 확인할 수 있음.

$ cat /etc/redhat-release

3. cat

release νŒŒμΌμ„ μ‘°νšŒν•œ 결과둜 CentOS 버전 정보가 좜λ ₯λ˜μ—ˆλŠ”λ°, 7.9.2009λ₯Ό ν•΄μ„ν•˜λ©΄ λ‹€μŒκ³Ό κ°™λ‹€.

  • ν”„λ‘œμ νŠΈ 버전 : 7 (Windows XP, 7, 10, 11κ³Ό κ°™μŒ)
  • 릴리즈 버전 : 9 (ν”„λ‘œμ νŠΈ λ¬Έμ œμ μ„ κ°œμ„  λ˜λŠ” μ΅œμ ν™”ν•˜λ©° λΆ€μ—¬λœ 버전)
  • 릴리즈 λ‚ μ§œ : 2009 (= 20'20'λ…„ '09'μ›”)

쑰금 더 μƒμ„Έν•˜κ²Œ μ‘°νšŒν•˜κ³  μ‹Άλ‹€λ©΄ release νŒŒμΌμ„ λͺ¨λ‘ 읽으면 λœλ‹€.

$ cat /etc/*release*
CentOS Linux release 7.9.2009 (Core)
Derived from Red Hat Enterprise Linux 7.9 (Source)
cat: /etc/lsb-release.d: λ””λ ‰ν„°λ¦¬μž…λ‹ˆλ‹€
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

CentOS Linux release 7.9.2009 (Core)
CentOS Linux release 7.9.2009 (Core)
cpe:/o:centos:centos:7

 

ν˜„μž¬ λ‚΄ μ„œλ²„μ˜ OS 버전(GitLabμ—μ„œ μš”κ΅¬ν•˜λŠ” 것이 CentOS 배포판 버전)은 el7μ΄λ―€λ‘œ ce, el7을 μ„ νƒν•΄μ„œ λ‹€μš΄λ‘œλ“œν•œλ‹€.

el7 λ²„μ „μ˜ ce

 

더보기

GitLab νŒ¨ν‚€μ§€ ν™ˆνŽ˜μ΄μ§€μ—μ„œ μ›ν•˜λŠ” 버전을 ν΄λ¦­ν•˜λ©΄ μš°μΈ‘μ— λͺ…λ Ήμ–΄λ₯Ό μ΄μš©ν•œ μ„€μΉ˜ 방법이 ν‘œμ‹œλ˜λŠ”λ°, λ„€νŠΈμ›Œν¬ 연결이 ν•„μš”ν•˜λ‹€. λ‚˜μ˜ 경우 curl λͺ…령이 μ•Œ 수 μ—†λŠ” 이유둜 먹톡이 λ˜μ–΄.. μˆ˜λ™ μ„€μΉ˜λ₯Ό ν•˜κΈ°λ‘œ ν–ˆμœΌλ―€λ‘œ νŒ¨μŠ€ν•œλ‹€.

GitLab Website

λ§Œμ•½ 온라인 μ„€μΉ˜λ₯Ό ν¬λ§ν•˜λŠ” 경우 ν™ˆνŽ˜μ΄μ§€μ— μ œμ‹œλœ λŒ€λ‘œ μ•„λž˜ λͺ…령을 μž…λ ₯ν•˜κ±°λ‚˜

$ curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

이전에 ν¬μŠ€νŒ…ν•œ 온라인 μ„€μΉ˜ κ°€μ΄λ“œ μ°Έκ³ !

 

3. Requires

GitLab을 μ΄μš©ν•˜κΈ° μœ„ν•΄μ„œλŠ” μΆ”κ°€ μ˜μ‘΄μ„± νŒ¨ν‚€μ§€κ°€ ν•„μš”ν•œλ°, 버전을 μ„ νƒν•˜λ©΄ μ΄λ™λ˜λŠ” ν™ˆνŽ˜μ΄μ§€μ— λ‚˜μ—΄λ˜μ–΄ μžˆλ‹€. λ„€νŠΈμ›Œν¬λ₯Ό μ΄μš©ν•΄μ„œ μ„€μΉ˜ν•˜λŠ” 경우 yum λͺ…λ ΉμœΌλ‘œ μ‰½κ²Œ κ°€λŠ₯ν•˜λ‚˜ μ˜€ν”„λΌμΈμœΌλ‘œ μ„€μΉ˜ν•  경우 λ™μΌν•˜κ²Œ λ°”μ΄λ„ˆλ¦¬λ₯Ό μ°Ύμ•„ Install해야함. (ν¬μŠ€νŒ…μ΄ κΈΈμ–΄μ§ˆ 것 κ°™μ•„ 이뢀뢄은 μƒλž΅)

 

 

2) μ„€μΉ˜ 파일(rpm) Install

λ¨Όμ € λ‹€μš΄λ°›μ€ 파일(gitlab-ce-15.10.2-ce.0.el7.x86_64.rpm)을 μ„œλ²„μ— μ˜¬λ¦°λ‹€. μœ„μΉ˜λŠ” νŽΈμ˜μƒ ν™ˆ 디렉토리 μ•„λž˜λ‘œ μ§€μ •ν•˜μ˜€λ‹€. 1-2GB μ •λ„μ˜ μž‘μ§€λŠ” μ•Šμ€ 파일이라 μ‹œκ°„μ΄ 쑰금 μ†Œμš”λ˜λŠ”λ°, 파일 μ—…λ‘œλ“œκ°€ μ™„λ£Œλ˜μ—ˆλ‹€λ©΄ μ•„λž˜ λͺ…령을 μž…λ ₯ν•˜μ—¬ GitLab을 Installν•œλ‹€.

$ cd {rpm νŒŒμΌμ„ μ—…λ‘œλ“œν•œ 디렉토리}
$ sudo yum install gitlab-ce-15.10.2-ce.0.el7.x86_64.rpm

μ €μž₯μ†Œμ—μ„œ νŒ¨ν‚€μ§€λ₯Ό κ²€μƒ‰ν•˜μ—¬ μ„€μΉ˜ν•˜λŠ” 것이 μ•„λ‹ˆλΌ, μ„œλ²„μ— μ—…λ‘œλ“œν•œ νŒ¨ν‚€μ§€ 파일둜 μ„€μΉ˜ν•˜λŠ” κ²ƒμ΄λ―€λ‘œ ν•΄λ‹Ή μœ„μΉ˜μ—μ„œ 파일λͺ…을 ν™•μž₯μžκΉŒμ§€ μ •ν™•ν•˜κ²Œ μž…λ ₯ν•˜μ—¬ μ„€μΉ˜ν•΄μ•Ό ν•œλ‹€. μ„€μΉ˜ν•˜κ² λƒλŠ” λ©”μ‹œμ§€κ°€ 뜨면 'y' μž…λ ₯ν•΄ μ„€μΉ˜λ₯Ό μ‹œμž‘ν•œλ‹€.

yum install ypm

 

μ„€μΉ˜κ°€ μ™„λ£Œλ˜λ©΄ GitLab μ•„μ΄μ½˜μ΄ κ·Έλ €μ§„ ν™”λ €ν•œ 터미널을 λ³Ό 수 μžˆλ‹€.

Install Complete

 

 

3) GitLab 접속을 μœ„ν•œ μ„€μ •

GitLab 섀정은 gitlab.rb νŒŒμΌμ„ μˆ˜μ •ν•΄μ•Ό ν•œλ‹€.

$ sudo vi /etc/gitlab/gitlab.rb
# external_url 'http://gitlab.example.com' << μ£Όμ„μ²˜λ¦¬
external_url 'http://{IP}:{Port}'  # GitLab μ„œλ²„ IP, Port
puma['listen'] = '127.0.0.1'       # 주석 ν•΄μ œ
puma['port'] = 9001                # 주석 ν•΄μ œ, μ›ν•˜λŠ” Listen Port

GitLab Setting 1) external_url
GitLab Setting 2) Advanced Settings

 

μ„€μ • 파일 μˆ˜μ •μ΄ μ™„λ£Œλ˜μ—ˆλ‹€λ©΄ 변경점을 λ°˜μ˜ν•΄μ•Ό ν•œλ‹€. λ§Žμ€ λ©”μ‹œμ§€μ™€ ν•¨κ»˜ κ½€λ‚˜ κΈ΄ μ‹œκ°„μ΄ μ†Œμš”λœλ‹€.

$ sudo gitlab-ctl reconfigure

gitlab Reconfigured! λ©”μ‹œμ§€κ°€ 좜λ ₯되면 μ„€μ • 반영이 μ™„λ£Œλœ 것이닀.

GitLab Setting Success) gitlab Reconfigured!

 

κΉƒλž© μ„œλΉ„μŠ€λ₯Ό μž¬μ‹œμž‘ν•œλ‹€.

$ sudo gitlab-ctl restart

GitLab Restart

$ sudo gitlab-ctl status

GitLab Status

 

 

4) GitLab 접속

GitLab은 Github처럼 웹에 μ ‘μ†ν•΄μ„œ μ‚¬μš©ν•˜λŠ” 방식이닀. λ‹€λ§Œ μ„œλ²„μ— μ„€μΉ˜ν•˜μ—¬ 직접 κ΄€λ¦¬ν•œλ‹€λŠ” 점이 차이점!

  • GitLab URL : gitlab.rb 파일의 external_url μ˜΅μ…˜μ— μž‘μ„±ν•œ URL (http://192.168.208.146:9000)

GitLab 접속

 

초기 λΉ„λ°€λ²ˆν˜ΈλŠ” μ„œλ²„ 내에 파일둜 μ €μž₯λ˜μ–΄ μžˆλ‹€. (ID : root)

$ sudo cat /etc/gitlab/initial_root_password
# WARNING: This value is valid only in the following conditions
#          1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
#          2. Password hasn't been changed manually, either via UI or via command line.
#
#          If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Password: JVGJ6gama4zo828Y0N2eUYaX0Nr1fGc2z+flDtCATO4=

# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.

GitLab 둜그인

 

root 계정 λΉ„λ°€λ²ˆν˜ΈλŠ” Menu > Admin > Admin Area > Overview > Users > Active > Name > Administrator > Edit μˆœμ„œλ‘œ 메뉴λ₯Ό ν΄λ¦­ν•˜μ—¬ λ³€κ²½ν•  수 μžˆλ‹€.

728x90
320x100