創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(三) —— Confluence(Docker版本)

知識(shí)庫(kù)

DevOps士聪、敏捷管理张症,對(duì)于整體流程和團(tuán)隊(duì),2個(gè)工具是最不能少的屯蹦,而且使用頻率非常高嘀趟,知識(shí)庫(kù) + 問題跟蹤脐区,我用的是Confluence + Jira,工欲善其事必先利其器她按,我們先需要把工具選擇和準(zhǔn)備好牛隅,再開始后面的事情炕柔,下面介紹下Confluence的安裝流程

為什么是Confluence

  • 豐富的知識(shí)庫(kù)相關(guān)的模板
  • 在線協(xié)作編輯
  • 每個(gè)人的知識(shí)可以分享給全公司的人
  • 評(píng)論功能和提醒功能完美結(jié)合,隨時(shí)隨地得到最新知識(shí)庫(kù)更新
  • 和JIRA結(jié)合完美

工具包準(zhǔn)備

安裝和啟動(dòng)

這里介紹2種安裝和啟動(dòng)方式

  • 傳統(tǒng)安裝啟動(dòng)方式
  • Docker安裝啟動(dòng)方式(推薦)
1.傳統(tǒng)安裝和啟動(dòng)

需要準(zhǔn)備

  • CentOS 7.x
  • JDK 1.8(配置好JAVA_HOME)
  • MYSQL 5.7.X(二進(jìn)制安裝或者Docker鏡像)

一頓操作猛如虎媒佣。匕累。。

## 解壓安裝包
cd your-path
tar -xvf atlassian-confluence-6.9.0.tar.gz
## 指定工作目錄
vi /your-path/atlassian-confluence-6.9.0/confluence/WEB-INF/classes/confluence-init.properties
# 在文件中加入 confluence.home=/your-home-path/
## mysql的驅(qū)動(dòng)Jar去官網(wǎng)下載一個(gè)適合5.7的即可
cp mysql-connector-java-5.1.45.jar /your-path/atlassian-confluence-6.9.0/confluence/WEB-INF/lib
## 啟動(dòng)
/your-path/atlassian-confluence-6.9.0/bin/start-confluence.sh
# 默認(rèn)是8090端口默伍,在瀏覽器打開http://localhost:8090
2.Docker安裝啟動(dòng)方式

需要準(zhǔn)備

  • Docker

由于官方已經(jīng)有鏡像欢嘿,我們?cè)诠俜界R像上面加入自定義的內(nèi)容即可,官方的6.9.0的Dockerfile的Repo地址也糊,我們需要的是紅框的2個(gè)文件炼蹦,如下:

confluence-docker-1.png

我在本地Mac上面建立了一個(gè)Docker Build目錄,包含下面幾個(gè)文件

  • Dockerfile(上面的官方repo下載)
  • atlassian-confluence-6.9.0.tar.gz(官方二進(jìn)制包狸剃,主要是Dockerfile里面的Curl自動(dòng)下載的速度實(shí)在是慢的可以掐隐,我在提前下載好,COPY進(jìn)去钞馁,這塊不是非必須用這個(gè)包虑省,可以依賴Dockerfile的Curl到官方下載安裝包)
  • docker-entrypoint.sh(上面的官方repo下載)
    修改Dockerfile
FROM openjdk:8-alpine

# Setup useful environment variables
ENV CONF_HOME     /var/atlassian/confluence
ENV CONF_INSTALL  /opt/atlassian/confluence
ENV CONF_VERSION  6.9.0

ENV JAVA_CACERTS  $JAVA_HOME/jre/lib/security/cacerts
ENV CERTIFICATE   $CONF_HOME/certificate

# [新增] 把build目錄的必要文件復(fù)制到鏡像內(nèi)
COPY atlassian-confluence-${CONF_VERSION}.tar.gz /tmp/atlassian-confluence-${CONF_VERSION}.tar.gz

# [新增] 創(chuàng)建Install目錄,解壓安裝包指攒,替換工具Jar包慷妙,刪除安裝包壓縮文件
RUN mkdir -p ${CONF_INSTALL}
RUN tar -xzvf /tmp/atlassian-confluence-${CONF_VERSION}.tar.gz -C ${CONF_INSTALL} --strip-components=1 --no-same-owner \
    && rm -rf /tmp/atlassian-confluence-${CONF_VERSION}.tar.gz

# Install Atlassian Confluence and helper tools and setup initial home
# directory structure.
RUN set -x \
    && apk --no-cache add curl xmlstarlet bash ttf-dejavu libc6-compat gcompat \
    && mkdir -p                "${CONF_HOME}" \
    && chmod -R 700            "${CONF_HOME}" \
    && chown daemon:daemon     "${CONF_HOME}" \
    && mkdir -p                "${CONF_INSTALL}/conf" \
    && curl -Ls                "https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.44.tar.gz" | tar -xz --directory "${CONF_INSTALL}/confluence/WEB-INF/lib" --strip-components=1 --no-same-owner "mysql-connector-java-5.1.44/mysql-connector-java-5.1.44-bin.jar" \
    && chmod -R 700            "${CONF_INSTALL}/conf" \
    && chmod -R 700            "${CONF_INSTALL}/temp" \
    && chmod -R 700            "${CONF_INSTALL}/logs" \
    && chmod -R 700            "${CONF_INSTALL}/work" \
    && chown -R daemon:daemon  "${CONF_INSTALL}/conf" \
    && chown -R daemon:daemon  "${CONF_INSTALL}/temp" \
    && chown -R daemon:daemon  "${CONF_INSTALL}/logs" \
    && chown -R daemon:daemon  "${CONF_INSTALL}/work" \
    && echo -e                 "\nconfluence.home=$CONF_HOME" >> "${CONF_INSTALL}/confluence/WEB-INF/classes/confluence-init.properties" \
    && xmlstarlet              ed --inplace \
        --delete               "Server/@debug" \
        --delete               "Server/Service/Connector/@debug" \
        --delete               "Server/Service/Connector/@useURIValidationHack" \
        --delete               "Server/Service/Connector/@minProcessors" \
        --delete               "Server/Service/Connector/@maxProcessors" \
        --delete               "Server/Service/Engine/@debug" \
        --delete               "Server/Service/Engine/Host/@debug" \
        --delete               "Server/Service/Engine/Host/Context/@debug" \
                               "${CONF_INSTALL}/conf/server.xml" \
    && touch -d "@0"           "${CONF_INSTALL}/conf/server.xml" \
    && chown daemon:daemon     "${JAVA_CACERTS}"

# Use the default unprivileged account. This could be considered bad practice
# on systems where multiple processes end up being executed by 'daemon' but
# here we only ever run one process anyway.
USER daemon:daemon

# Expose default HTTP connector port.
EXPOSE 8090 8091

# Set volume mount points for installation and home directory. Changes to the
# home directory needs to be persisted as well as parts of the installation
# directory due to eg. logs.
VOLUME ["/var/atlassian/confluence", "/opt/atlassian/confluence/logs"]

# Set the default working directory as the Confluence home directory.
WORKDIR /var/atlassian/confluence

COPY docker-entrypoint.sh /
ENTRYPOINT ["/docker-entrypoint.sh"]

# Run Atlassian Confluence as a foreground process by default.
CMD ["/opt/atlassian/confluence/bin/start-confluence.sh", "-fg"]

執(zhí)行build

cd /your-docker-build-path
docker build -t michael/atlassian-confluence:6.9.0 .

啟動(dòng)鏡像(配套如果使用MYSQL僻焚,建議Docker Compose啟動(dòng)Confluence + MYSQL)

docker run -d --rm --name=wiki -p 8090:8090 -p 8091:8091 \
-v /your-confluence-path/home:/var/atlassian/confluence \
-v /your-confluence-path/logs:/opt/atlassian/confluence/logs \
michael/atlassian-confluence:6.9.0 

配置

  • 選擇產(chǎn)品安裝


    confluence-setup-1.png
  • 點(diǎn)擊下一步(省略了一步允悦,授權(quán)碼填寫)

confluence-setup-2.png
  • 選擇配置數(shù)據(jù)庫(kù)
confluence-setup-4.png
  • 配置數(shù)據(jù)庫(kù)并測(cè)試(我選擇的是MYSQL,這里需要修改MYSQL事務(wù)隔離級(jí)別虑啤,改成transaction-isolation = READ-COMMITTED隙弛,讀取已提交,Confluence要求的狞山,會(huì)檢查)
confluence-setup-5.png
confluence-setup-6.png
  • 選擇紅框選項(xiàng)(Confluence有多種用戶管理方式全闷,為了單純介紹Confluence,暫時(shí)不展開萍启;剩余方式有:Jira數(shù)據(jù)庫(kù)总珠、Crowd數(shù)據(jù)庫(kù)、LDAP數(shù)據(jù)庫(kù)等等)
confluence-setup-7.png

confluence-setup-8.png
創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(一) —— 前期準(zhǔn)備
創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(二) —— Docker安裝
創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(三) —— Confluence(Docker版本)
創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(四) —— Jira(Docker版本)
創(chuàng)業(yè)公司基礎(chǔ)設(shè)施如何搭建(五) —— Crowd(Docker版本)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末勘纯,一起剝皮案震驚了整個(gè)濱河市局服,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌驳遵,老刑警劉巖淫奔,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異堤结,居然都是意外死亡唆迁,警方通過查閱死者的電腦和手機(jī)鸭丛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來唐责,“玉大人鳞溉,你說我怎么就攤上這事《饰担” “怎么了穿挨?”我有些...
    開封第一講書人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)肴盏。 經(jīng)常有香客問我科盛,道長(zhǎng),這世上最難降的妖魔是什么菜皂? 我笑而不...
    開封第一講書人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任贞绵,我火速辦了婚禮,結(jié)果婚禮上恍飘,老公的妹妹穿的比我還像新娘榨崩。我一直安慰自己,他們只是感情好章母,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開白布母蛛。 她就那樣靜靜地躺著,像睡著了一般乳怎。 火紅的嫁衣襯著肌膚如雪彩郊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,155評(píng)論 1 299
  • 那天蚪缀,我揣著相機(jī)與錄音秫逝,去河邊找鬼。 笑死询枚,一個(gè)胖子當(dāng)著我的面吹牛违帆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播金蜀,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼刷后,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了渊抄?” 一聲冷哼從身側(cè)響起尝胆,我...
    開封第一講書人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎抒线,沒想到半個(gè)月后班巩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年抱慌,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了逊桦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡抑进,死狀恐怖强经,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情寺渗,我是刑警寧澤匿情,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站信殊,受9級(jí)特大地震影響炬称,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜涡拘,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一玲躯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鳄乏,春花似錦跷车、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至水援,卻和暖如春密强,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背裹唆。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工誓斥, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留只洒,地道東北人许帐。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像毕谴,于是被迫代替她去往敵國(guó)和親成畦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353