Confluence

오픈소스 비즈니스 컨설팅
둘러보기로 가기 검색하러 가기

위키 솔루션인 Confluence를 정리 한다.

  • 라이센스 : 상용 (오픈소스 진영에는 무료 라이선스 발급)
  • 플랫폼 : Java


설치 가이드

설치전 사전 준비 사항

  • Tomcat Connectors 1.1.26
  • Confluence를 서비스 하기 위해서는 메모리가 충분해야 하므로 Tomcat을 기동할 때 "-Xms512m -Xmx512m" 옵션을 줄 것


Confluence용 DB 설정

  • MySQL에 Confluence에서 사용할 Schmea를 등록한다.
  • MySQL Administrator에 root 관리자로 로그인 한다.
  • 좌측 상단 창에서 "Catalogs"를 선택한다.
  • 좌측 하단의 "Schemata" 창에서 우측 마우스를 누른다.
  • "Create New Schema" 메뉴를 선택하여 Schema를 생성한다.
  • Schema 생성화면에서 "Schema name"으로 "confluencedb"를 입력한다.
DB Schema 등록


  • MySQL에 Confluence에서 사용할 사용자를 등록한다.
  • 좌측 상단 창에서 "User Administration"을 선택한다.
  • 좌측 하단의 "Users Accounts" 창에서 우측 마우스를 누른다.
  • "Add new user" 메뉴를 선택하여 사용자를 생성한다.
  • "User Information" 탭에서 "MySQL User"("confluence"), "Password", "Confirm Password" 등을 등록한다.
DB 사용자 등록


  • MySQL에 Confluence에서 사용할 사용자의 권한을 설정한다.
  • "Schema Privileges" 탭에서 사용자가 사용할 Schema("confluencedb")를 선택한다.
  • "Available Privileges"의 모든 권한을 "Assigned Privileges"로 이동한다.
  • "Apply changes" 버튼을 눌려 등록된 정보를 저장한다.
권한 부여


  • MySQL Query Browser에 접속한다.
  • 상단의 "Tools" 메뉴에서 "MySQL Query Browser" 메뉴를 선택한다.
Query Browser 접속


  • 사용자의 MySQL 데이터베이스 접속 정보를 추가한다.
  • 우측의 "Schemata" 탭에서 "mysql"을 더블 클릭하여 선택한다.
  • grant all privileges on confluencedb.* to confluence@localhost identified by '암호'; (사용자에게 Schmea에 대한 권한을 추가)
  • flush privileges; (위 명령을 통해 설정한 권한을 데이터베이스에 반영)
  • select host, user, password from user order by user, host; (사용자의 접속 정보 확인)
접속 정보 추가
  • MySQL Query Browser가 아니라 DOS 창에서 접속 정보를 추가하는 방법
mysql -uroot -pxxx mysql
    grant all privileges on confluencedb.* 
        to confluence@localhost identified by '암호';
    flush privileges;
    select host, user, password from user order by user, host;
    exit


Confluence 설치


  • 다운로드 받은 파일을 Tomcat에서 사용할 수 있도록 deploy 한다.
  • $TOMCAT_HOME의 경로 중 여백(" ")이 포함되지 않았을 경우
  • 다운로드 받은 파일의 압축을 풀어 $TOMCAT_HOME/webapps/confluence 폴더로 모두 복사 한다.
  • $TOMCAT_HOME/webapps/confluence/WEB-INF/classes/confluence-init.properties 파일에서 confluence.home의 값을 $TOMCAT_HOME/webapps/confluence 로 지정한다.
  • $TOMCAT_HOME의 경로 중 여백(" ")이 포함되었을 경우
  • 다운로드 받은 파일의 압축을 풀어 c:/confluence 폴더로 모두 복사 한다.
c:/confluence/WEB-INF/classes/confluence-init.properties 파일에서 confluence.home의 값을 c:/confluence이 되도록 ..을 적절히 사용하여 지정한다.
C:/Program Files/Apache Software Foundation/Tomcat 6.0/webapps 일 경우
confluence.home=../../../../confluence 와 같이 지정 한다.
  • $TOMCAT_HOME/conf/server.xml에서 아래 사항을 참조하여 수정 한다.
<Engine name="Catalina" defaultHost="localhost">
    <Host name="localhost"  appBase="webapps" 생략>
        //--- 여기에 다음을 추가 한다.
       <Context path="/confluence" docBase="c:/confluence" 
                debug="0" reloadable="false">
           <Manager pathname="/confluence" />
       </Context>
    </Host>
</Engine>


  • MySQL의 JDBC Driver(mysql-connector-java-5.1.7-bin.jar)를 $CONFLUENCE_HOME/WEB-INF/lib 에 복사 한다.
  • Tomcat을 재기동 한다.



  • 화면에서 Server ID를 복사하여 둔다.

설치 시작

  • 화면 상단의 "new my.atlassian.com" 링크를 선택 한다.
  • "Sign up for an account" 링크를 선택 한다.
  • 필요한 정보를 입력한 후 "Create Account" 버튼을 선택하여 사용자 계정을 생성 한다.


  • Confluence의 한달간 사용 가능한 라이선스 키를 발급 한다.
  • http://www.atlassian.com/에 로그인 한다.
  • 화면 상단의 "new my.atlassian.com" 링크를 선택 한다.
  • "New Evaluation License" 링크를 선택 한다.
  • Product로 "Confluence"를 선택하고 Server ID에서 위에서 복사해 둔 Server ID를 등록한 후 "Generate License" 버튼을 눌러 라이선스를 발급 한다.


  • 이전에 진행하던 설치 화면에 위에서 생성한 라이선스 키를 복사하여 넣은 후 "Custom Installation" 버튼을 선택한다.


  • MySQL을 선택한 후 "External Database >>" 버튼을 선택 한다.

DB 선택

  • "Direct JDBC >>" 버튼을 선택 한다.

DB 직접 접속

  • DB 접속 정보를 입력하고 "Next >>" 버튼을 선택 한다.
  • Driver Class Name : com.mysql.jdbc.Driver
  • Database URL : jdbc:mysql://localhost/confluencedb?autoReconnect=true
  • User Name : confluence
  • Password : 암호

DB 접속 정보

  • "Example Site >>" 버튼을 선택하여 샘플 데이터가 등록되도록 한다.

Example

  • 관리자 정보를 등록하고 "Next >>" 버튼을 선택 한다.
  • User Name : admin
  • Password : 암호
  • Password : 암호 확인
  • Name : 이름
  • Email : admin(골뱅이)jopenbusiness.com

관리자 등록


Apache HTTP Server 연동

  • $APACHE_HOME/conf/httpd.conf 에 다음을 추가 한다.
###--- Confluence를 위한 환경 설정
Alias   /confluence    c:/confluence
<Directory "/confluence">
    Order allow,deny
    Allow from all
</Directory>


  • $APACHE_HOME/conf/mod_jk.conf 에 다음을 추가 한다.
JkMount /confluence/*       worker1


  • Apache HTTP Server와 Apache Tomcat을 재기동 한다.


사용자 가이드

관리자 가이드

한글화

  • Plugin 형태로 설치를 하여야 한다.
  • $CONFLUENCE_HOME/WEB-INF/lib/confluence-de_DE-plugin-1.7.jar 참조


  • 위 confluence-de_DE-plugin-1.7.jar을 참조하여 languages-ko_KR.jar을 작성한다.
  • languages-ko_KR.jar 파일을 $CONFLUENCE_HOME/WEB-INF/lib/ 에 복사한 후 Tomcat을 재기동 한다.


  • 한국어를 Confluence의 default 언어로 설정 한다.
  • Confluence의 관리자로 로그인 한다.
  • "Browser -> Confluence Admin" 메뉴에서 language 메뉴를 선택 한다.
  • 표시되는 화면에서 "한국어" 링크를 선택하여 한국어를 디폴트 언어로 지정 한다.


디자인 가이드

Confluence에서 Default Theme(기본 테마)를 선택하였을 경우에 디자인 변경에 대한 사항을 정리 한다.

  • 디자인과 관련된 Confluence 메뉴
  • "공간 -> Confluence Admin -> 룩앤필 -> 레이아웃" 메뉴에서 전체 화면 구조를 설정 한다.
  • "공간 -> 공간 관리 -> 룩앤필 -> 레이아웃" 메뉴에서 해당 메뉴의 화면 구조를 설정 한다.


  • 화면 레이아웃 관련 파일
레이아웃 관련 파일
사이트 레이아웃 - 메인, 전체, 팝업, 인쇄 /decorators/main.vmd, global.vmd, popup.vmd, printable.vmd
컨텐츠 레이아웃 - 공간, 페이지, 메일, 블로그 포스트, 댓글, Comments

/decorators/space.vmd, page.vmd, mail.vmd, blogpost.vmd /decorators/components/sharedcomments.vmd, comments.vmd

익스포트 레이아웃 - 공간 익스포트, 페이지 익스포트 com/atlassian/confluence/spaces/Space.htmlexport.vm, com/atlassian/confluence/pages/Page.htmlexport.vm
  • 로그인 화면
/decorators/main.vmd
    /login.vm


  • 로그아웃 화면
/decorators/main.vmd
    /logout.vm


  • 메인 화면
/decorators/main.vmd
   /includes/css/master.css, master-ie.css, ...
   /includes/js/master.js, ...
    /decorators/header.vm
    /decorators/footer.vm


Navagation Sidebar

하나의 Space에서 페이지간의 이동을 위하여 Navagation Sidebar를 추가해 보자.

  • Confluence의 Default Theme 설정 확인
  • 관리자로 로그인 한다.
  • "Create a space" 메뉴를 선택하여 Navagation Sidebar를 적용할 새로운 공간(Sapces)를 생성 한다. (편의상 새로 만든 공간을 아래에서는 newSpace 라고 명명 한다.)
  • "Browser -> Confluence Admin" 메뉴에서 "Themes" 메뉴를 선택하여 Current Theme를 Default Theme로 지정 한다.


  • 새로 만든 공간에 TreeNavigation 페이지 생성
  • 관리자로 로그인 한다.
  • "Dashboard" 메뉴를 선택한 후 "newSpace"를 선택 한다. (Home 아래가 아니라 반드시 newSpace에서 페이지를 생성하여야 한다.)
  • "Add -> Page"를 선택하여 "TreeNavigation"라는 이름의 페이지를 생성 한다.
{pagetree:root=@home\|sort=natural\|excerpt=true\|reverse=false\|startDepth=1\|expandCollapseAll=true\|searchBox=true}
또는
{pagetree:root=@home|sort=natural|excerpt=true|reverse=false|startDepth=1|expandCollapseAll=true|searchBox=false}


  • 새로 만든 공간의 페이지 레이아웃을 변경 하여 Navagation Sidebar가 표시되도록 한다.
  • 관리자로 로그인 한다.
  • "Dashboard" 메뉴를 선택한 후 "newSpace"를 선택 한다.
  • "Space Admin -> Themes" 메뉴를 선택하여 "Default Theme"가 현재 테마로 선택되어 있는지 확인 한다.
  • "Layout" 메뉴를 선택한 후 "Page Layout" 구역에서 "Create Custom" 링크를 선택 한다.
<div class="wiki-content">
$body
</div>

위에 표시된 글을 찾아 아래의 글로 대체 한다.

#if ($action.isPrintableVersion() == false)
<style>
.spacetree * ul{
padding-left:0px;
margin-left: 0px;
}
.spacetree * li{
margin-left: 5px;
padding-left:5px;
} 

</style>

<table cellspacing="2" cellpadding="5">
<tr>
<td valign="top" align="left" width="22%" bgcolor="#F9F9F9" class="noprint">
<div class="tabletitle">Table of Contents</div>
<div class="spacetree">
#includePage($helper.spaceKey "TreeNavigation")
</div>
</td>
<td valign="top" align="left" width="78%" class="pagecontent">
<div class="wiki-content">
$body
</div>
</td>
</tr>
</table>
#else
<div class="wiki-content">
    $body
</div>
#end
  • "Save" 버튼을 눌러 변경 사항을 저장 한다.


  • 참고 문헌


JOSSO 적용

SSO (Single-Sign-On) 솔루션인 JOSSO를 적용 한다.

참고 문헌