목표 시스템 및 사전 필요 지식

목표 시스템

Domain and Port

응용 서비스는 아래의 포트를 사용하도록 구성했고 각각 도메인을 부여하고 가상 호스트로 연결하여 사용합니다.

개발자 PC에서 연결할 수 있도록 hosts 파일에 도메인을 추가하거나 로컬 DNS 서버를 구성해서 사용합니다.

서비스 App Port Domain data path
gitlab 8080 gitlab.example.com
gogs 8180 gogs.example.com
gitea 8280 gitea.example.com
redmine(이슈 관리) 8380 redmine.example.com, issue.example.com
JIRA(이슈 관리) 8480 jira.example.com, issue.example.com
Jenkins(지속적인 통합) 8580 jenkins.example.com, ci.example.com /var/proj/jenkins/jenkins_home
Bamboo(지속적인 통합) 8680 bamboo.example.com, ci.example.com
nexus(저장소 관리) 8780 nexus.example.com
confluence 8880 confluence.example.com, wiki.example.com

data path(/var/proj) 는 실제 데이타가 저장되므로 대용량의 별도의 디스크를 추가하고 주기적으로 백업해야 합니다.

Virtual Host config

설치가 끝난 후에는 웹 서버에 가상 호스트를 추가하고 웹 서버와 application server 를 reverse proxy 로 연결해 줘야 합니다.

반복되는 작업을 단순화하기 위해 script 로 작성해서 github gist 에 올려 놓았습니다.

  1. gist 다운로드

    curl -o serve-tomcat.sh https://gist.githubusercontent.com/lesstif/4d162c4c8df756a65286/raw 
    sudo mv serve-tomcat.sh /usr/local/bin/ 
    sudo chmod +x /usr/local/bin/serve-tomcat.sh
    
  2. 가상 호스트 추가(server-tomcat.sh domain port)

    sudo serve-tomcat.sh  gitlab.example.com 8080
    
  3. 정상적으로 종료되면 가상 호스트 설정이 추가된 /etc/nginx/sites-available/gitlab.example.com 설정 파일이 생기고 nginx 도 구동됩니다.

CentOS 계열은 /etc/nginx/nginx.conf 의 http 블록에 다음 내용을 추가해야 합니다.

http {
  # ....

  include /etc/nginx/conf.d/*.conf;

  ## 아래 줄 추가
  include /etc/nginx/sites-enabled/*;
}

사전 필요 지식

Virtual Host

하나의 웹 서버로 여러 가지 웹 서비스를 하기 위한 가상 호스트 지식

Reverse Proxy

웹 서버와 WAS 를 연결하기 위한 reverse proxy.

HTTPS

https(SSL, TLS)를 지원하도록 웹 서버를 설정하는 방법

results matching ""

    No results matching ""