학교 이메일 주소가 있으면 Bitbucket에 무제한의 repositry를 생성하고 사용할 수 있지만, 자신의 자료를 외부에 보관하는 것에 큰 공포를 느끼는 사람도 있기도 하여 내부 협엽용으로 GitLab을 설치해 보았다.
참고할 수 있는 문서야 무수히 많겠지만, 기본적으로는 "김대리 Gitlab 5.1 설치하다" 문서를 참고하여 쉽게 이해하며 진행할 수 있었다.
설치 환경이 다르기도 하고(내 경우는 Debian 기반 Linux Mint) 버전도 조금 달라서 다소 매끄럽게 진행되지 않은 부분이 있었다. 여기서는 그런 부분들만 간단히 언급하겠다.
1. Python2
gitlab에선 python2 를 찾았다. 시스템엔 기본적으로 python 2.7.3이 설치되어 있으나 python2라는 실행파일은 존재하지 않았기에 심볼릭 링크로 만들어 주었다.
ln -s /usr/bin/python2.7 /usr/bin/python2
2.mariadb 설치
mysql이 요즘 평이 안 좋아서 대체 패키지인 mariadb를 설치하였다.
sudo apt-get install mariadb-server mariadb-client libmariadbclient-dev
이후 모든 명령에 대해 완전히 동일하게 반응하여 주었다.
3.ruby
처음에는 RVM으로 루비를 설치하려고 하였다. 그런데, 민트용 루비 바이너리가 없는지 직접 컴파일해야하는 듯 한데, 소스의 주소가 잘못되어 RVM으로 루비를 설치할 수 없었다. 귀찮아서 그냥 글로벌 루비를 사용하기로 결정. 단순히 루비만 설치할 경우 gem으로 필요한 익스텐젼을 설치하려고 할 경우 빌드할 수 없다는 에러가 발생한다. ruby1.9.1-dev도 같이 설치해 주자.
참고할 수 있는 문서야 무수히 많겠지만, 기본적으로는 "김대리 Gitlab 5.1 설치하다" 문서를 참고하여 쉽게 이해하며 진행할 수 있었다.
설치 환경이 다르기도 하고(내 경우는 Debian 기반 Linux Mint) 버전도 조금 달라서 다소 매끄럽게 진행되지 않은 부분이 있었다. 여기서는 그런 부분들만 간단히 언급하겠다.
1. Python2
gitlab에선 python2 를 찾았다. 시스템엔 기본적으로 python 2.7.3이 설치되어 있으나 python2라는 실행파일은 존재하지 않았기에 심볼릭 링크로 만들어 주었다.
ln -s /usr/bin/python2.7 /usr/bin/python2
2.mariadb 설치
mysql이 요즘 평이 안 좋아서 대체 패키지인 mariadb를 설치하였다.
sudo apt-get install mariadb-server mariadb-client libmariadbclient-dev
이후 모든 명령에 대해 완전히 동일하게 반응하여 주었다.
3.ruby
처음에는 RVM으로 루비를 설치하려고 하였다. 그런데, 민트용 루비 바이너리가 없는지 직접 컴파일해야하는 듯 한데, 소스의 주소가 잘못되어 RVM으로 루비를 설치할 수 없었다. 귀찮아서 그냥 글로벌 루비를 사용하기로 결정. 단순히 루비만 설치할 경우 gem으로 필요한 익스텐젼을 설치하려고 할 경우 빌드할 수 없다는 에러가 발생한다. ruby1.9.1-dev도 같이 설치해 주자.
sudo apt-get install ruby ruby1.9.1-dev
4. gitlab 소스 다운로드
gitlab 을 클론 후 체크아웃으로 5-4-stable 브랜치를 사용하려고 해도 master 상에서 로컬로 새로운 5-4-stable 브랜치를 만드기만 하고는 6.0.0pre를 사용하게 되는 문제를 경험. 그래서 그냥
git checkout remotes/origin/5-4-stable
로 원격의 5-4-stable 브랜치로 맞춰주었다. 이후
git checkout -b 5-4-stable
로 로컬에서의 이름을 5-4-stable로 정해주었다.
git checkout -b 5-4-stable
로 로컬에서의 이름을 5-4-stable로 정해주었다.
참고한 글과 같이 진행을 하고 나서 gitlab을 실행하려고 하니 Cannot assign requested address - bind(2) (Errno::EADDRNOTAVAIL) 라는 에러 메세지로 실행할 수 없었다.
참고한 글과 다르게 기본값인 tcp://0.0.0.0:9292 로 다시 돌려서 저장하고 나니 무사하게 잘 실행됨.
참고한 글과 다르게 기본값인 tcp://0.0.0.0:9292 로 다시 돌려서 저장하고 나니 무사하게 잘 실행됨.
6. init script 설치
참고한 글에서 설치하려던 gitlab 버전이 5.1이어서 이부분에서 착각을 했었다. https://raw.github.com/gitlabhq/gitlab-recipes/5-4-stable/init.d/gitlab 를 다운 받으려고 했었는데, 도무지 찾을 수 없다. 확인해보니 gitlab-recipes의 버전은 gitlab과는 별개. 그냥 https://raw.github.com/gitlabhq/gitlab-recipes/5-1-stable/init.d/gitlab 를 다운 받아서 넣어주면 된다.
7. sign up 페이지 활성화
난 관리자로서는 귀찮아서 한명한명 수동으로 등록시켜주는 것은 싫다. 그래서 가입 페이지를 활성화 시켰다.
gitlab/config/gitlab.yml 파일에서
## Users management
#signup_enabled: true
부분을 찾아 다음처럼 코멘트를 해제해 준다.
## Users management
signup_enabled: true
처음엔 indent를 잘 맞추지 않고 '#' 한 글자만 지웠더니 실행이 안되는 문제를 경험했다. indent를 맞춰주니 정상적으로 실행.
참고한 문서가 워낙 잘 정리되어 있어서 큰 시행착오 없이 대충 설치해서 돌릴 수 있게 되었다.
댓글 없음:
댓글 쓰기