Ubuntu로 서버에 Gitlab을 설치하는 방법

Gitlab 로고

몇 주 전에 우리는 Microsoft가 GitHub를 갑작스럽게 구매했다는 소식을 들었습니다. 많은 사람들이 논쟁의 여지가 있는 구매를 자신들이 만든 것처럼 옹호하거나 자유 소프트웨어의 몰락이 도래한 것처럼 가혹하게 비판합니다. 개인적으로 나는 두 가지 입장을 믿거나 옹호하지 않지만 이러한 소식으로 인해 많은 소프트웨어 개발자가 Github 서비스를 포기하고 Microsoft에서 Github을 구매하기 전에 Github만큼 무료인 다른 대안을 찾게 된 것은 사실입니다.

많은 서비스가 인기를 얻고 있지만 대다수의 개발자가 GitLab을 사용하기로 선택했습니다., Ubuntu가 설치된 컴퓨터 또는 Ubuntu를 운영 체제로 사용하는 개인 서버에 설치할 수있는 무료 대안입니다.

GitLab이란 무엇입니까?

그러나 우선 그것이 정확히 무엇인지 봅시다. Gitlab은 Git 기술을 사용하는 소프트웨어 버전 관리입니다.. 그러나 다른 서비스와 달리 Git 외에 위키 서비스 및 버그 추적 시스템과 같은 다른 기능을 통합합니다. 모든 것은 GPL 라이선스에 따라 사용이 허가되지만 WordPress 또는 Github 자체와 같은 다른 유형의 소프트웨어와 마찬가지로 누구나 Gitlab을 사용할 수 없다는 것은 사실입니다. Gitlab에는 클라이언트에게 두 가지 유형의 계정을 제공하는 웹 서비스가 있습니다.: 무료 계정 무료 및 공용 저장소와 개인 및 공용 저장소를 생성 할 수있는 다른 유료 또는 프리미엄 계정으로.

즉, 모든 데이터는 Github 에서처럼 우리가 제어 할 수없는 외부 서버에서 호스팅됩니다. 하지만 Gitlab에는 Gitlab CE o 커뮤니티 에디션 서버 또는 컴퓨터에 Gitlab 환경을 설치하고 가질 수 있습니다. 가장 실용적인 방법은 Ubuntu가있는 서버에서 사용하는 것입니다. 이 소프트웨어는 Gitlab Premium의 이점을 제공하지만 다른 서버가 아닌 서버에 모든 소프트웨어를 설치하기 때문에 비용을 지불 할 필요가 없습니다.

Github 서비스와 마찬가지로 Gitlab은 다음과 같은 흥미로운 리소스를 제공합니다. 저장소 복제, Jekyll 소프트웨어로 정적 웹 페이지 개발 또는 소프트웨어 또는 개정판에 오류가 있는지 여부를 알려줄 수있는 버전 제어 및 코드.

Gitlab의 성능은 적어도 서비스 측면에서 Github보다 우수합니다. 서버 자체 소프트웨어로 사용하는 경우 서버의 하드웨어에 따라 성능이 달라집니다. 개인 서버에서 Gitlab 소프트웨어 용 Github 소프트웨어를 변경하는 것이 우리가하려는 경우 고려해야 할 사항입니다.

Ubuntu 서버에 GitLab을 설치하려면 무엇이 필요합니까?

서버에 Gitlab 또는 Gitlab CE를 설치하려면 먼저 소프트웨어가 올바르게 작동하는 데 필요한 종속성 또는 소프트웨어를 설치해야합니다.. 이를 위해 터미널을 열고 다음을 작성합니다.

sudo apt-get install curl openssh-server ca-certificates postfix -y

아마도 curl과 같은 패키지가 이미 컴퓨터에있을 수 있지만 그렇지 않은 경우 설치하기에 좋은 기회입니다.

GitLab 설치

Gitlab CE 외부 저장소

이제 모든 Gitlab 종속성이 있으므로 공개 된 Gitlab CE 소프트웨어를 설치해야하며 Ubuntu 외부 저장소를 통해 얻을 수 있습니다.. 이를 위해 터미널을 열고 다음을 작성합니다.

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

외부 저장소를 사용하지만 Apt-get 소프트웨어 도구를 사용하는 또 다른 방법이 있습니다. 이렇게하려면 터미널에 위의 내용을 작성하는 대신 다음을 작성해야합니다.

sudo EXTERNAL_URL="http://gitlabce.example.com" apt-get install gitlab-ce

이를 통해 Ubuntu 서버에 Gitlab CE 소프트웨어가 설치됩니다. 이제 제대로 작동하도록 몇 가지 기본 설정을 수행 할 때입니다.

Gitlab CE 구성

가장 먼저해야 할 일은 특정 포트 해제 Gitlab이 사용하고 닫히고 방화벽을 사용합니다. 우리가 열어야하거나 Gitlab에서 사용하는 포트는 80 및 443.

이제 처음으로 Gitlab CE 웹 화면을 열어야합니다.이를 위해 브라우저에서 http://gitlabce.example.com 웹 페이지를 엽니 다. 이 페이지는 우리 서버의 페이지이지만 처음으로 시스템이 기본적으로 가지고있는 암호 변경. 비밀번호를 변경 한 후에는 등록하거나 새 암호와 "루트"사용자로 로그인. 이를 통해 Ubuntu 서버에 Gitlab 시스템의 개인 구성 영역이 있습니다.

우리 서버가 공용으로 사용되는 경우에는 웹 브라우징을보다 안전하게하기 위해 인증서를 사용하는 웹 프로토콜 인 https 프로토콜을 사용해야합니다. 모든 인증서를 사용할 수 있지만 Gitlab CE는 저장소의 URL을 자동으로 변경하지 않습니다. 이렇게하려면 수동으로해야합니다. 그래서 우리는 /etc/gitlab/gitlab.rb 파일을 편집하고 external_URL에서 새 주소의 이전 주소를 변경해야합니다이 경우 문자 "s"를 추가하는 것이지만 URL을 다르게 만들어 웹 서버의 보안을 강화할 수도 있습니다. 파일을 저장하고 닫으면 변경 사항이 적용되도록 터미널에 다음을 작성해야합니다.

sudo gitlab-ctl reconfigure

이렇게하면 Gitlab 소프트웨어에 대한 모든 변경 사항이 적용되고이 버전 제어 시스템 사용자가 사용할 수 있습니다. 이제 우리는이 소프트웨어를 문제없이 사용할 수 있으며 개인 저장소를 갖기 위해 비용을 지불하지 않아도됩니다.

Gitlab 또는 GitHub 중 어느 것이 더 낫습니까?

Gitlab에서 발생하는 코드 삭제

이 시점에서 분명히 많은 사람들이 우리 소프트웨어의 저장소를 사용하거나 만드는 데 어떤 소프트웨어가 더 나은지 궁금 할 것입니다. Github를 계속할지 또는 Gitlab으로 전환할지 여부. 둘 다 Git을 사용하며 변경하거나 생성 된 소프트웨어를 한 저장소에서 다른 저장소로 쉽게 이동. 하지만 개인적으로 서버에 Github가 있고 아무것도 설치되어 있지 않으면 Github를 계속 설치하는 것이 좋습니다.. 그 이유는 생산성이 무엇보다 중요하고 장점이 거의없는 다른 소프트웨어로 변경해도 보상이되지 않기 때문입니다.

좋은 점은 두 도구 모두 자유 소프트웨어라는 것입니다. 가상 머신 생성, 우리는 두 프로그램을 테스트하고 Ubuntu 서버를 변경하거나 손상시키지 않고 어떤 프로그램이 우리에게 적합한 지 확인할 수 있습니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   에드가 알바 라테 이바네즈

    나는 gitea라는 다른 대안을 사용합니다. https://github.com/go-gitea/. 당신은 그것을 시도 할 수 있습니다 https://gitea.io

  2.   저스틴 담

    우리의 공룡 게임 https://dinosaurgames.org.uk/ 수백만 년 전 동물들과 함께 즐거운 시간을 보내세요! 네안데르탈 인과 모든 종류의 공룡을 관리 할 수 ​​있습니다. Tyrannosaurus Rex, Velociraptors 및 Brachiosaurus는 모두 구성되어 있습니다! 우리의 공룡 레벨에는 싸움에서 경험, 온라인 포커에 이르기까지 다양한 종류의 게임 플레이가 포함되어 있습니다. 원하는 모든 종류의 장애물을 플레이 할 수 있으며 결국 선사 시대의 엔터테인먼트를 즐길 수 있습니다! 원시인 대 생물로 싸우고, 지구를 방황하고, 적을 먹어 치우세요!

  3.   릴랜드호르

    세계 최초의 브라우저 기반 First Person Egger! 파괴를 얻으십시오! 이 3D 멀티 플레이어 슈팅 게임에서 클래스를 선택하고 적을 무분별한 편견으로 끝내십시오. Scramble Shotgun 및 EggK47과 같은 치명적인 도구를 장비하여 승리를 거두십시오. 차단되지 않은 Shellshockers 감상 https://shellshockersunblocked.space/

  4.   NYJSO

    hpv72