본문 바로가기
[Developer]/Linux,Windows,MacOS

Gitlab 설치시 포트 변경 방법

by 반가운 해피빈이 2016. 9. 14.

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



이렇게 하고, 웹 브라우저에서


https://[내가설정한 URL]:90


이렇게 실행하면 Gitlab이 잘 나온다!



이 후에는 root를 입력하든, 새로 가입을 하든, 그건 알아서 하면 된다.



아, 보너스로 로그를 확인하고 싶으면 이 명령어로 확인해보길.(unicorn, nginx 부분 로그이니 나머지는 응용을 잘 하면 된다.)


$ sudo gitlab-ctl tail unicorn

$ sudo gitlab-ctl tail nginx


댓글0