Child pages
  • confluence 설치 및 업그레이드

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note

atlassian confluence 6.10 download 버전을 설치하는 절차를 설명하며 대상 OS 는 Linux (RHEL/CentOS, Ubuntu)입니다.

사전 준비

...

와 제약 사항

  1. 지원하는 운영체제는 공식적으로 Windows, Linux 이므로 이 두가지를 권장합니다. 

  2. DBMS 를 사전에 준비하며 PostgreSQL 이나 MySQL 을 권장합니다.

    Note

    지원하는 DBMS 목록은 Supported Platforms 을 참고하세요.

  3. JDK 8 버전이 설치되어 있어야 하며 Oracle 이나 AdoptOpenJDK 만 지원합니다. (Azul 사의 Zulu 는 미지원)
  4. 설치 유형은 installer 와 WAR 등 여러 가지가 있지만 tomcat 을 내장한 standalone 패키지 기준입니다.
  5. Web Server 를 앞에 두고 confluence 와 reverse proxy 방식으로 동작하는 방식으로 설명합니다. (포워드 프록시(forward proxy) 리버스 프록시(reverse proxy) 의 차이)

Confluence 다운로드

  1. https://www.atlassian.com/software/confluence/download 에서 설치하려는 OS 에 맞는 설치본을 다운받습니다. Standalone (TAR.GZ Archive) 를 다운받으면 된다.
  2. 적당한 폴더에 압축을 푼다.

    Code Block
    tar zxvf atlassian-confluence-5.2.5

     

  3. 설치한 DBMS 용 JDBC 를 다운받아서 압축을 푼 후에 나온 jar 파일을 atlassian-confluence-xxxx 내의 lib 폴더에 복사한다. MySQL용 JDBC는 http://dev.mysql.com/downloads/connector/j/ 에서 다운받는다.

    Code Block
    cp mysql-connector-java-5.1.28-bin.jar atlassian-confluence-5.2.5/lib
  4. atlassian-confluence-5.2.5 폴더로 이동한후에 conf/server.xml 을 수정할 부분이 있으면 수정한다. 

  5. confluence/WEB-INF/classes/confluence-init.properties  파일을 에디터로 열어서 confluence.home의 절대경로를 설정해 준다. 해당 경로는 첨부파일 및 confluence 설정파일이 저장되는 곳이니 confluence 를 운영하게 되면 반드시 백업해줘야 한다.

    Code Block
    languagebash
    ## 설정예
    confluence.home=/var/atlassian/confluence
    Warning

    symbolic link 폴더일 경우 실제 폴더의 절대 경로를 적어줘야 한다.

...


TOMCAT

...

톰캣 설정에 URIEncoding="UTF-8"  반드시 추가

...

languagexml
titleconf/server.xml

설정

conf/server.xml 을 열어서 "HTTPS - Proxying Confluence via Apache or Nginx over HTTPS" 아래의 Connector 부분 주석을 해제합니다.

Code Block
 <Connector port="8090" connectionTimeout="20000" redirectPort="8443"
               connectionTimeout    maxThreads="2000048" minSpareThreads="10"
              redirectPort     enableLookups="8443false" URIEncodingacceptCount="UTF-8"/>
Warning

apache 의 mod_proxy 나 nginx 를 앞에 두고 서비스하는 경우 다음과 같이 proxyName, proxyPort 를 지정해 주어야 정상적으로 서비스가 가능함.

Code Block
languagexml
titleconf/server.xml
<Connector port="8080" protocol="HTTP/1.110" debug="0" URIEncoding="UTF-8"
           connectionTimeout="20000"        protocol="org.apache.coyote.http11.Http11NioProtocol"
   redirectPort="8443" URIEncoding="UTF-8"            proxyName   scheme="www.lesstif.comhttps" proxyPortsecure="443true" schemeproxyName="https<subdomain>.<domain>.com" secureproxyPort="true443"/>

포트는 기본 설정을 권장하며 다음 항목을 수정해야 합니다.

  • proxyNam: 실제 서비스하는 도메인을 기술하며 도메인이 wiki.example.com 일 경우 proxyName="wiki.example.com" 으로 설정합니다.
  • proxyPort:  HTTPS 포트를 기술합니다.


HTTP 서버와 연계

Warning

Web Server 는 nginx 보다는 apache httpd 가 연계가 편리함.

Apache httpd  설정

Code Block
# Put this after the other LoadModule directives
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module /usr/lib/apache2/modules/mod_proxy_wstunnel.so
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

# Put this in the main section of your configuration (or virtual host, if using Apache virtual hosts)
 
  ProxyRequests Off
  ProxyPreserveHost On
    
  RewriteEngine On
  RewriteCond %{REQUEST_URI} !^/synchrony
  RewriteRule ^/(.*) http://<domain>:8090/$1 [P]

  <Proxy *>
      Require all granted
  </Proxy>

  ProxyPass /synchrony http://<domain>:8091/synchrony

  <Location /synchrony>
      Require all granted
      RewriteEngine on
      RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
      RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC]
      RewriteRule .* ws://<domain>:8091%{REQUEST_URI} [P]
  </Location>

  ProxyPass / http://<domain>:8090
  ProxyPassReverse / http://<domain>:8090
   
  <Location />
      Require all granted
  </Location>

웹 서버를 reverse proxy 로 사용하고 HTTPS 로 서비스를 제공할 경우

conf/server.xml 의 HTTP Connector 에 다음과 같이 proxyName, proxyPort 를 추가해야 한다.

Code Block
proxyName="wiki.example.com" proxyPort="443" scheme="https"

전체 설정

...


nginx 설정

최초 설치시 시간이 오래 걸리므로 gateway 타임아웃 에러 방지를 위해 proxy_connect_timeout 등의 설정을 해줍니다.

Code Block
 location / {
        proxy_pass http://127.0.0.1:8090;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header  maxThreads="200" minSpareThreads="10"X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

     enableLookups="false" acceptCount="10" debug="0" URIEncoding="UTF-8"
   # gateway timeout 방지
        proxy_connect_timeout 3000;
   proxyName="wiki.example.com" proxyPort="443" scheme="https"   proxy_send_timeout 3000;
        proxy_read_timeout 3000;
  protocol="org.apache.coyote.http11.Http11NioProtocol" />
     send_timeout 3000;
    }



 

동시 편집 사용

confluence 6부터 동시 편집 기능이 추가되어 별도의 context 설정 필요(/synchrony, 8091)

...