Gitlab Community Edition을 설치해서 활용해보고자 나의 마이크로서버에 설치를 했다.
허나.. 한가지 문제가 되는것이 있는점이..
마이크로서버에는 이미 충분히 서비스가 많이 돌고 있다는 점이었다.=_=;
Gitlab CE는 외부 서비스시 80포트를 이용하던데, 이미 apache에서 80을 쓰고 있는 중이기 때문이다.
덤으로 nginx도 돌리고 있었으며, 81과 443포트도 이용중이다.
이 밖에도 Tomcat의 8080포트 및 유사 포트를 이용중이다.
한마디로.. 왠만한 well-known 포트는 다 이용한다고 보면 된다.
그렇다면, 방법은 단 하나, 포트를 well-known하지 않은 포트로 변경하는 것이다.
90포트로 변경하기로 마음먹고, 방법을 이리저리 확인해보는 중.. 실패와 실패를 거듭했다. 대략 없는시간 쪼개서 실험하는데 한 10시간은 족히 쓴것같다ㅜ
여튼 서론은 이쯤 하고, 정리해보면 다음과 같다.
apt-get 으로 gitlab-ce를 설치하는 것은 이미 공식사이트에 잘 나와있으니 생략한다.(gitlab-ee도 같다.)
설치 직후, 설정파일인(정확하게는 configure돌릴 수 있는 설정파일)을 수정해야 한다.
$ sudo vi /etc/gitlab/gitlab.rb
이 파일을 열고
내가 주석을 풀거나 추가한 내용은 다음과 같다.(URL은 도메인도 가능)
external_url 'http://[나의 외부 URL]:90'
gitlab_rails['internal_api_url'] = 'http://[나의 외부 URL]:90'
unicorn['worker_timeout'] = 60
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = 8580
이게 전부다.
unicorn은 ruby와 관련된 것으로 보인다.
unicorn은 기본 8080포트를 이용한다. 당연히 tomcat을 구동한다면 문제가 되기 때문에 임의의 포트인 8580으로 지정했다.
그리고 웹 서버 담당인 nginx에서는 80포트를 이용하도록 되어있으며, 이 또한 apache나 nginx를 이미 돌리고 있으면 문제가 되기 때문에, 이 역시 바꿔준다.
그 방법으로는 external url과 internal url의 부분을 수정했으며, 90포트로 기재했기 때문에, nginx에서는 90포트로 인식되게 된다.
위와 같이 설정을 마치고 실제 적용하기 위해서는
$ sudo gitlab-ctl reconfigure
이렇게 수행 후 그래도 깔끔하게 다시 시작을 원한다면
$ sudo gitlab-ctl restart
해준다.
그러면 netstat로 확인시 내가 원하는 포트로 정상동작함을 알 수 있다.
$ netstat -anp | grep :90
$ netstat -anp | grep :8580
이렇게 하고, 웹 브라우저에서
http://[내가설정한 URL]:90
이렇게 실행하면 Gitlab이 잘 나온다!
이 후에는 root를 입력하든, 새로 가입을 하든, 그건 알아서 하면 된다.
아, 보너스로 로그를 확인하고 싶으면 이 명령어로 확인해보길.(unicorn, nginx 부분 로그이니 나머지는 응용을 잘 하면 된다.)
$ sudo gitlab-ctl tail unicorn
$ sudo gitlab-ctl tail nginx
'[Developer] > Linux,Windows,macOS' 카테고리의 다른 글
ext 파일시스템에 대한 정리(ext4까지) (3) | 2018.01.01 |
---|---|
새 디스크 추가시 ext4 format으로 마운트하기 (0) | 2017.09.06 |
ssh접속을 위해 클립보드에 public key 복사하기 (0) | 2016.09.12 |
Gitlab 설치시 오류 대처법 1 (0) | 2016.09.12 |
VIM 간편하고 강력하게 다루기(vi editor 확장판) (0) | 2016.04.10 |
댓글