CentOS 7에 GitLab 설치

CentOS 7에 GitLab 설치

2022-10-05 last update

7 minutes reading CentOS GitLab

전제



  • CentOS 7 서버 준비
  • Memory 4GB를 권장합니다. 여기에서는 Azure Marketplace VM CentOS-7.3, D1v2 (1core/3.5GB)를 사용합니다.


  • 고유 도메인을 사용하는 경우
  • 자체 도메인의 DNS에 GitLab 서버에 A 레코드 (또는 CNAME) 설정을 추가합니다.

  • 이번에 사용한 GitLab은 v10.8

  • (참고) GitLab EE를 사용하고 있습니다. 라이센스를 Activate할 때까지 CE와 동등한 기능만 이용 가능.
  • Community Edition or Enterprise Edition | GitLab


  • 절차



    GitLab 설치


  • CentOS 서버에서 다음 명령을 실행하여 GitLab을 설치합니다.

    bash
    # 依存パッケージのインストールと事前構成 --------------
    sudo yum install -y curl policycoreutils-python openssh-server
    sudo systemctl enable sshd
    sudo systemctl start sshd
    
    # firewalldを実行していない場合は警告がでるが、そのまま
    sudo firewall-cmd --permanent --add-service=http
    sudo systemctl reload firewalld
    
    # Postfixのインストール -----------
    sudo yum install postfix
    sudo systemctl enable postfix
    sudo systemctl start postfix
    
    # GitLabパッケージの追加とインストール -----------
    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
    
    # URLは使用しているサーバーのFQDNに置き換えること
    sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
    
    
  • 브라우저에서 Gitlab에 액세스하고 관리자의 초기 비밀번호 설정
  • root 사용자가 초기화 한 비밀번호를 입력하고 로그인합니다.

    HTTPS 설정(Let's Encrypt 통합 사용)



  • (참고) Let's encrypt 통합을 사용하지 않는 경우는 다음 페이지를 참조

  • NGINX 설정 \ Manually configuring HTTPS | GitLab)

  • sudo vi /etc/gitlab/gitlab.rb 로 다음의 행을 편집한다. (코멘트 아웃되었으므로 #을 제거하십시오)

  • /etc/gitlab/gitlab.rb
    # HTTPSに変更する
    external_url 'https://〜'
    
    # Let's Encrypt統合を有効にする
    letsencrypt['enable'] = true 
    
    # Let's Encryptに登録する自分のメールアドレスを指定する
    letsencrypt['contact_emails'] = ['[email protected]']
    
    # (必要に応じて) HTTPリクエストをHTTPSへリダイレクトする設定にする
    nginx['redirect_http_to_https'] = true
    
    
  • NSG 등이 인터넷 측에서 80 포트에 액세스 할 수없는 경우 허용
  • 다음 명령을 실행합니다

  • bash
    # 設定変更を読み込む
    sudo gitlab-ctl reconfigure
    
    # 証明書が作成されていることを確認する
    ls /opt/gitlab/embedded/ssl/certs/
    
  • NSG를 변경하면 원래 설정으로 되돌립니다.

  • 이메일 알림 설정


  • 아래 참조
    Azure에 Gitlab 설정 \ 메일 전송 설정 - Qiita

  • 참고


  • Installation methods for GitLab | GitLab
  • NGINX settings\Enable HTTPS | GitLab
  • SSL 설정 \ Let's Encrypt Integration | GitLab