...
Note |
---|
atlassian confluence 6.10 download 버전을 설치하는 절차를 설명하며 대상 OS 는 Linux (RHEL/CentOS, Ubuntu)입니다. |
사전 준비
...
와 제약 사항
지원하는 운영체제는 공식적으로 Windows, Linux 이므로 이 두가지를 권장합니다.
DBMS 를 사전에 준비하며 PostgreSQL 이나 MySQL 을 권장합니다.
Note 지원하는 DBMS 목록은 Supported Platforms 을 참고하세요.
- JDK 8 버전이 설치되어 있어야 하며 Oracle 이나 AdoptOpenJDK 만 지원합니다. (Azul 사의 Zulu 는 미지원)
- 설치 유형은 installer 와 WAR 등 여러 가지가 있지만 tomcat 을 내장한 standalone 패키지 기준입니다.
- Web Server 를 앞에 두고 confluence 와 reverse proxy 방식으로 동작하는 방식으로 설명합니다. (포워드 프록시(forward proxy) 리버스 프록시(reverse proxy) 의 차이)
Confluence 다운로드
- https://www.atlassian.com/software/confluence/download 에서 설치하려는 OS 에 맞는 설치본을 다운받습니다. Standalone (TAR.GZ Archive) 를 다운받으면 된다.
적당한 폴더에 압축을 푼다.
Code Block tar zxvf atlassian-confluence-5.2.5
설치한 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
atlassian-confluence-5.2.5 폴더로 이동한후에 conf/server.xml 을 수정할 부분이 있으면 수정한다.
confluence/WEB-INF/classes/confluence-init.properties 파일을 에디터로 열어서 confluence.home의 절대경로를 설정해 준다. 해당 경로는 첨부파일 및 confluence 설정파일이 저장되는 곳이니 confluence 를 운영하게 되면 반드시 백업해줘야 한다.
Code Block language bash ## 설정예 confluence.home=/var/atlassian/confluence
Warning symbolic link 폴더일 경우 실제 폴더의 절대 경로를 적어줘야 한다.
...
TOMCAT
...
톰캣 설정에 URIEncoding="UTF-8" 반드시 추가
...
language | xml |
---|---|
title | conf/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 | ||||
---|---|---|---|---|
| ||||
<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)
...