簡簡單單使用Docker部署Confluence

一、環境要求

1、已安裝docker17及以上版本

二、容器運行

docker run -d –name confluence -p 8090:8090 –user root:root cptactionhank/atlassian-confluence

 然後等待鏡像拉取

啟動完成之後,直接瀏覽器訪問:

http://${Server}:8090/  

下面看下Docker 部署Confluence15.2

一、數據庫準備數據庫版本:5.7

這裡數據庫並沒有采用docker鏡像方式,而是選擇已有數據庫。至於數據庫安裝這裡不再說明。

註:我這裡安裝confluence時,需要在下面配置數據庫信息時,在數據庫地址鏈接後面加上?sessionVariables=tx_isolation=’READ-COMMITTED’,否則會報錯

1) 創建數據庫並授權

create database confluence default character set utf8 collate utf8_bin;
GRANT ALL PRIVILEGES ON confluence.* TO 'confluence'@'%' IDENTIFIED BY 'Confluence#123' WITH GRANT OPTION;
FLUSH PRIVILEGES;

二 、confluence安裝

1) 獲取鏡像

confluence鏡像我們去拉取官方最新鏡像atlassian/confluence-server:6.15.2

[[email protected] ~]# docker pull atlassian/confluence-server:6.15.2

鏡像大小大約800多M,下載速度取決於本地帶寬,耐心等待就好

2)啟動confluence

[[email protected] ~]# docker run -d \    -v /opt/confluence:/var/atlassian/application-data/confluence \    -v /etc/localtime:/etc/localtime:ro \    –name=”confluence” \    -p 7080:8090 \    -p 7091:8091 \    atlassian/confluence-server:6.15.2

上面參數掛載宿主機目錄進行confluence數據持久化及同步容器時間,7080為容器映射到宿主機端口,後面需要用此端口進行對confluence訪問。

啟動後,可以通過docker ps 查看是否啟動成功,如果看到confluence容器是UP狀態,則證明已經啟動成功。

3)confluence安裝配置

瀏覽器打開confluence訪問頁面:http://172.16.11.248:7080,既可以看到confluence安裝配置頁面

3.1)修改語言(看個人需要)

3.2) 獲得插件,這裡可以不選擇,直接下一步就行

3.3) 獲取Server ID到次頁面需要輸入key才可以進行下一步,這裡需要記住服務器ID,為後面破解需要。

三、confluence破解

  3.1)破解包下載

    下載地址: key-Confluence.rar

  3.2)運行破解程序(需要java環境)

  win上打開cmd,進入下面路徑,運行破解程序

  D:\key-Confluence\confluence5.1-crack\confluence5.1-crack\iNViSiBLE\

  java -jarconfluence_keygen.jar  

  3.3)將atlassian-extras-decoder-v2-3.4.1.jar從容器中復制出來,並重命名

  docker cp confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar /tmp/atlassian-extras-2.4.jar

  3.4) 把剛剛從容器中復制出來的atlassian-extras-2.4.jar放到破解文件夾中(D:\key-Confluence\),後面破解程序生成key時需要加載

    點擊.patch選擇從容器中復制出來的文件atlassian-extras-2.4.jar進行加載,如果沒問題可以看到左下角加載成功的字樣。

  3.5)填寫註冊信息

  name:隨意

  Server ID:上文出現的server id(我這裡是:B3B4-0N2V-HJY0-1HJL)

  信息填寫後,點擊.gen按鈕即可生成所需key

  3.6)將生成的新的atlassian-extras-2.4.jar文件重新復制到confluence容器

  docker cp atlassian-extras-2.4.jar confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar

  說明:通過上面生成key,會在atlassian-extras-2.4.jar所在目錄生成新的jar文件(及破解後的文件),需要把生成新的文件復制到confluence容器中

  另外這裡由於使用的是mysql數據庫,還需要mysql驅動,不然下面配置mysql信息時無法填寫用戶名密碼,所以我們復制mysql驅動至容器

  docker cp mysql-connector-java-5.1.47.jar confluence:/opt/atlassian/confluence/confluence/WEB-INF/lib/

  mysql驅動下載地址:https://dev.mysql.com/downloads/connector/j/5.1.html

  重啟confluence容器

  3.7)復制生成的key輸入到瀏覽器中,點擊下一步,即可進行數據庫配置

  3.8)配置數據庫信息

  選擇自己數據庫時,下面在數據庫類型中選擇mysql,數據庫信息填寫成功後,點擊測試鏈接,顯示成功即可進行下一步操作。

註:

  1、數據庫URL中的IP地址需要修改為真實的數據庫IP,後面也需要加上?sessionVariables=tx_isolation=’READ-COMMITTED’,否則會報錯。另外,還需要加上useUnicode=true&characterEncoding=utf8字符串,防止出現中文亂碼的情況

  完整URL:jbdc:mysql://172.16.11.248/confluence?sessionVariables=tx_isolation=’READ-COMMITTED’&useUnicode=true&characterEncoding=utf8

  2、若是你在安裝時沒有添加”useUnicode=true&characterEncoding=utf8″字符串,可以在安裝後編輯:/var/atlassian/application-data/confluence下的confluence.cfg.xml文件,添加”&useUnicode=true&characterEncoding=utf8″

  完整配置:<property name=”hibernate.connection.url”>jdbc:mysql://172.16.11.248/confluence?sessionVariables=tx_isolation=’READ-COMMITTED’&amp;useUnicode=true&amp;characterEncoding=utf8</property>

  3.9)下一步時間稍微比較長,因為需要初始化數據到指定數據庫中,初始化成功後,就可看到下面的頁面,我們選擇空白站點進行confluence使用。

  3.10)配置confluence管理用戶

這樣confluence安裝破解就已經完畢,後面就可以開始使用瞭。

四、解決上傳附件亂碼問題

  confluence安裝後,如果我們上傳的附件包含中文,在預覽時,會出現亂碼的情況,這是因為我們的容器中沒有微軟字體,需要我們手動添加。見下圖:  

  4.1)上傳字體文件

  confluence官方鏡像中已經安裝好設置字體命令,所以我們不需要單獨安裝(這點做的真攢。。),我們從win系統中復制微軟字體到鏡像中指定文件就好

  win系統字體文件路徑:C:\Windows\Fonts

  我這裡選擇的是simsun.ttc(新宋體;常規),上傳到confluence容器宿主機,然後copy至鏡像中的/usr/share/fonts/chinese

  4.2)把字體文件復制到容器中

  首先進入容器,創建chinese目錄

[[email protected] ~]# docker exec -it confluence /bin/bash                             #進入容器
[email protected]:/var/atlassian/application-data/confluence# mkdir /usr/share/fonts/chinese/    #創建chinese目錄
[email protected]:/var/atlassian/application-data/confluence# exit                    #退出容器
[[email protected] ~]# docker cp simsun.ttc confluence:/usr/share/fonts/chinese/              #copy字體至容器中

  說明:上面說過confluence官方鏡像中默認已安裝字體命令,所以/usr/share/fonts目錄已經存在,你的若是沒有該目錄,那麼你首先需要先進行字體命令的安裝,才可進行上述命令操作。

  4.3)修改confluence啟動加載文件

  上述把所需字體放指容器後,還需要對confluence進行設置,使其啟動時可以加載我們所需要的字體。

  編輯/opt/atlassian/confluence/bin/setenv.sh文件,在文件中加上下面一行: 

CATALINA_OPTS="-Dconfluence.document.conversion.fontpath=/usr/share/fonts/chinese/ ${CATALINA_OPTS}"

  4.4)清空confluence緩存文件目錄

  進入confluence數據目錄:/var/atlassian/application-data/confluence

  刪除viewfile目錄和shared-home/dcl-document目錄裡的所有緩存文檔文件

  註:如果你不進行此操作,預覽舊文件時,還是會出現亂碼,隻有新上傳文件預覽才正常。

  然後重啟容器,這即可解決附件中的文件預覽時,中文亂碼問題。

到此這篇關於簡簡單單使用Docker部署Confluence的文章就介紹到這瞭,更多相關Docker部署Confluence內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: