보유중인 서버에 내부적으로 GIT 서버를 구축하는 법

로컬환경에 git 서버 구축하는법 ( 서버 날라가면 히스토리 날라가는거에대한 대비책은 있어야햄)

GIT Host Service 종류

Github 공개 git 저장소만 무료
BitBucket 비공개 git저장소 무료, 용량 무제한, 협업자 수 5명까지 무료
GitLab 비공개git저장소 무료, 용량 무제한, 협업자 수 무제한
Visual Studio Team Service 비공개git저장소 무료, 용량 무제한, 협업자 수 5명까지 무료

JIRA와 연동이 가능한 BITBUCKET을 염두해 두었으나,

추후 DevOps 배포 파이프라인도 공부해보고싶기도 하고, 협업자 수에 제한이 없는 Lab으로 선정하였다.

늘 새로 배우는건 재밌다.

배우는건 10초만 배워도 10초전의 나와는 다른시각이 생긴다.

시간은 아끼고 배움은 아끼지 말아야겠다 일분일초가 소듕해,,ㅎㅎ

Git Lab(23.11.16)

  1. GitLab을 설치할 로컬서버에 접속해준다
  2. 버전 확인

Untitled

내가가진 서버는 우분투 20.04.6을 쓰고있다.

  1. GitLab문서 확인(https://about.gitlab.com/install/#ubuntu)

  2. 무료버전인(CE)와 유료버전인(EE)가 있고 나는 물룐 무료

  3. 구글링하여 나온 정보와 공식문서를 비교해가며 설치

    (1) Install and configure the necessary dependencies

    ⇒ 필요한 의존성을 설정하고 설치해라.

    지금 사용중인 포트에 80 포트는 없음을 확인했으니 이걸로써야징

    <포트확인>

    Untitled

    문서의 코드를 그대로 쳤따.

    sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates tzdata perl

    Untitled

    1. package 설치

    ⇒ 어느 블로그에서 봤는데 공식 문서에는 ee버전을 설치하라그래서 하기 코드로 변경하여 설치를해주었다.

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

    Untitled

    시간이 찌이잉끔 걸렸는데 repository가 셋업되었다고 뜬다!! 뭐고뭐고1

    1. 다음에는 공식문서와 다르게 이걸로 뭐.community edition을 ㅏㄲㄹ라고한다.

    sudo apt-get install gitlab-ce

    Untitled

    기분이 왤케좋냐

    ㅋㅋㅋㅋ이게머라고

    1. 설정변경해주기

    (1) gitlab의 주소와 포트 설정해주기

    내가 깐 gitlab은 하기경로의 파일의 설정을 변경해주어야한다.

    etc/gitlab/gitlab.rb

    변경해줄 땐 sudo vi etc/gitlab/gitlab.rb를 열면되는데 거기에는

    Untitled

    이런게있다

    인서트 명령어인 i를 누르고 external_url 부분을 내 로컬이나 설정하고싶은 ip, 도메인으로 변경을해준다.

    하기처럼 변경해주었다.

    내아이피는 hostname -I로 확인가능하다(대소문주의)

    포트는 23으로

    http://서버ip(입력):포트번호(입력)

    (2) gitlab_workhorse & unicorn

    gitlab_workhorse는 Gitlab의 역방향 프록시를 담당한다. 즉, 우리가 일반적으로 볼 수 있는 git의 push/ pull, Repository 다운로드, 업로드와 같은 HTTP 요청을 처리한다.

    편집중인 화면에서 /8080검색하고, 엔터를친다음 i를 눌러서 수정가능하다

    디폴트라 8080인데 8080은 마니쓰니까 90으로해줘야징

    → 유니콘이없어서 일단 냅두었다.

    1. 재시작해주어야한다.

    $sudo gitlab-ctl reconfigure $sudo gitlab-ctl restart

    서버에 설치를 잘못해서 일단 지우기

    sudo gitlab-ctl cleanse

    sudo gitlab-ctl uninstall

    sudo apt remove gitlab-ee

    sudo apt purge gitlab-ee


    나는 우분투 서버로 원격 접속한거였고 + ip대역이 달라

    내부 포트와 외부포트를 포워딩하여 접속할 수 있게 하는게 필요했다.

    내가 서버에 82번 포트로 뚫어둔걸

    회사 과장님이5682 외부포트를 뚤어주셔서 포트포워딩을 통해 외부에서 접속가능하게 되었다. (짱!)

    Untitled