InfraLinux

CentOS 6.5에서 GitLab rpm 설치 하기

RPM을 통하여 설치하게 되면 자동적으로 nginx서버와 Postgres데이터베이스를 사용하게 된다. 기존에 아파치가 설치되어 있을 경우 nginx 도 설치됨과 동시에 80포트를 사용하기 때문에 반드시 기존 아파치의 사용 포트를 다른 포트로 변경해 주거나 아니면 설치 이후 nginx포트를 변경해 주어야 한다.

nginx서버 말고 아파치를 이용하거나 mysql을 이용할 수 있지만 그럴 경우 rpm을 설치할 수 없고 직접 필요 파일들을 모두 설치해 주어야 한다.
인터넷에 검색하면 해당 설치를 자동화해주는 내용들이 있으니 참고하자.
모든 과정은 root에서 작업하도록 한다.

GitLab 설치

  1. https://www.gitlab.com/downloads/에서 CentOS 6.5 64bit RPM 파일을 다운 받는다. (root 폴더에 넣어둠)

  2. openssh-server 설치

    yum install openssh-server
    
  3. postfix 또는 sendmail 이나 exim 셋중에 하나 설치 이미 있으면 패스

    yum install postfix
    

    또는

    yum install sendmail
    
  4. 다운받은 rpm 을 설치

    rpm -i gitlab-x.y.z_omnibus-x.el6.x86_64.rpm
    
  5. 설치가 완료되면 설정 재실행

    gitlab-ctl reconfigure
    
  6. 웹서비스와 ssh 사용을 해야 하기 때문에 방화벽에서 관련 포트를 열어 주도록 한다.

    lokkit -s http -s ssh
    

위 모든 과정이 끝나면 gitlab-ctl status 명령어를 통해 현재 실행 상태를 알 수 있다.

아래와 같이 출력됨

run: nginx: (pid 972) 7s; run: log: (pid 971) 7s
run: postgresql: (pid 962) 7s; run: log: (pid 959) 7s
run: redis: (pid 964) 7s; run: log: (pid 963) 7s
run: sidekiq: (pid 967) 7s; run: log: (pid 966) 7s
run: unicorn: (pid 961) 7s; run: log: (pid 960) 7s

설치 완료 후 설치한 서버의 ip로 접속하면 gitlab 로그인 창이 출력 된다. 기본 관리자 아이디와 패스워드는 root / 5iveL!fe이다. 접속 후 패스워드 변경 화면이 출력되니 원하는 패스워드로 변경하도록 한다.

GitLab 시작/종료

다음 명령은 GitLab를 크고 끄거나 리셋 할 수 있으니 알아 두자.

  • Start all GitLab components

     sudo gitlab-ctl start
    
  • Stop all GitLab components

     sudo gitlab-ctl stop
    
  • Restart all GitLab components

     sudo gitlab-ctl restart
    
  • nginx 만 따로 끄거나 키고 싶으면 아래와 같이 입력 하면 된다.

     gitlab-ctl restart nginx
    

기타 설정

  • URL을 설정하고 싶은 경우
    • /etc/gitlab 폴더에 gitlab.rb 파일을 다음과 같이 만든고 한줄 입력한다.

        sudo mkdir -p /etc/gitlab
        sudo touch /etc/gitlab/gitlab.rb
        sudo chmod 600 /etc/gitlab/gitlab.rb
      
    • 파일이 생성되면 vi 등으로 열어서 아래 내용을 입력후 저장

        external_url "http://gitlab.example.com"
      
    • 저장완료후 gtilab-ctl reconfigure 명령으로 다시 시작 하면 끝.

그 외 git 데이터 저장소 위치를 변경하거나 ldap 로그인 방식 변경, https 프로토콜의 사용 등을 /etc/gitlab/gitlab.rb 파일에 내용을 추가하고 gitlab-ctl reconfigure 명령으로 설정할 수 있다.
자세한 내용은 아래 URL을 참고 https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md