Docker安裝jira與confluence
準(zhǔn)備
目錄:/var/www/docker/Atlassian
目錄:/var/www/docker/Atlassian/jira
目錄:/var/www/docker/Atlassian/confluence
安裝jira
制作jira Docker破解容器
下載atlassian-agent.jar文件
https://pan.baidu.com/s/1AucTmTNPSG85hhWF7mkIcQ
文件解壓后得到j(luò)ar包放入Atlassian目錄
cqj@ubuntu:/var/www/docker/Atlassian$ ls
atlassian-agent.jar atlassian-agent-v1.2.3 atlassian-agent-v1.2.3.zip Dockerfile
編寫jira對應(yīng)Dockerfile文件
Dockerfile文件內(nèi)容:
FROM cptactionhank/atlassian-jira-software:7.12.0
USER root
# 將代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/jira/
# 設(shè)置啟動(dòng)加載代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
~
Dockerfile與atlassian-agent.jar包在同一個(gè)目錄下,比如Atlassian目錄
構(gòu)建鏡像
cqj@ubuntu:/var/www/docker/Atlassian$ sudo docker build -t jira/jira:v7.12.0 .
Sending build context to Docker daemon 3.116MB
Step 1/4 : FROM cptactionhank/atlassian-jira-software:7.12.0
7.12.0: Pulling from cptactionhank/atlassian-jira-software
8e3ba11ec2a2: Pull complete
311ad0da4533: Pull complete
df312c74ce16: Pull complete
2e22a8aaa076: Pull complete
3132eb4a4b91: Pull complete
Digest: sha256:45208c3b82bbe08887bf741233a2da20a8880013cba9a994b869c94bf1bdbd16
Status: Downloaded newer image for cptactionhank/atlassian-jira-software:7.12.0
---> 1b29859343c2
Step 2/4 : USER root
---> Running in 74dbb20c7f7d
Removing intermediate container 74dbb20c7f7d
---> 268d321f3dc7
Step 3/4 : COPY "atlassian-agent.jar" /opt/atlassian/jira/
---> facf112e85dc
Step 4/4 : RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
---> Running in a7db34bc5080
Removing intermediate container a7db34bc5080
---> ace8d9857463
Successfully built ace8d9857463
Successfully tagged jira/jira:v7.12.0
啟動(dòng)容器
cqj@ubuntu:/var/www/docker/Atlassian$ sudo docker run -d -p 8080:8080 jira/jira:v7.12.0
35f2c9f917e46e99fc3ac598bb7cbb043a20f5d3e6aa3c7095239e6241c10b1d
web訪問安裝設(shè)置
http://192.168.8.130:8080



破解jira

復(fù)制服務(wù)器ID:BW2Q-QAZT-PYNI-LTZ5
在本地存放"atlassian-agent.jar"的目錄下執(zhí)行命令,生成許可證:(如果沒有java環(huán)境,參考java環(huán)境章節(jié))
java -jar atlassian-agent.jar -d -m 421808956@qq.com -n jmcqj -p jira -o http://192.168.8.130:8080 -s BFXL-ZQGP-45U5-1PZZ
執(zhí)行結(jié)果:
cqj@ubuntu:/var/www/docker/Atlassian$ java -jar atlassian-agent.jar -d -m 421808956@qq.com -n jmcqj -p jira -o http://192.168.8.130:8080 -s BW2Q-QAZT-PYNI-LTZ5
Your license code(Don't copy this line!!!):
AAABqQ0ODAoPeJyNkk9vozAQxe98CqSeoTabNCSSpe0CB1aEpAvdantzyKRxBIaMTbbpp68JVNs/U
bSSL7bmPf/mzVw9wNr+yaVNfJvQmTljYi+z3PaIR6wnBJDbumkA3UQUIBXkxwZSXgELFvN59CuIb
xMrQOBa1DLkGlgndAh1iG9dkISgChRNp2L3shSV0Aak7AX26mhvtW7U7Pr6ZStKcEVtzbmQGiSXB
UTPjcDj8Js/dcjEHGsnkL9RRmvRW6dJPI/zKLTStloBLjb3ClAxh77BXfBqsF63hXa7i6Pqjf7LE
dwvRhdqeaHFAZjGFj5k+f79gtxQ8QBM19iXDvH8Nh93zXlW1q7+xXgqiQ68bE/DYBteqsH+s9ECn
7gUqq/rkjZB06nn0hvf9V36jcx84hMrqKU2qJGJvmQjj5rH6fjm+37vFnXVO59P4z/7yzTHjqknH
QYShyyJwyxKnYSOJ/5oMqLU/Es/zPfcSmWAB0Aj//Hg3Tl3t4+5s/yTxk6SP47PbfLXHVm2WGy5g
s97/F58SrFBoYb2DCg7AztEd2LcVcV+9wrwtyhNMCwCFCEXvg3UQ8199PjfBkyUlSqJtgL4AhR2E
BQ/sAK8H4H84AZg2gD4Q1RlFw==X02kg
cqj@ubuntu:/var/www/docker/Atlassian$
完成配置
按照界面引導(dǎo)完成相關(guān)配置及設(shè)置管理員賬號密碼
賬號密碼
cxxxxi
cxxxxe
安裝confluence
編寫dockerfile
FROM cptactionhank/atlassian-confluence:6.13.0
USER root
# 將代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/confluence/
# 設(shè)置啟動(dòng)加載代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/confluence/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/confluence/bin/setenv.sh
下載atlassian-agent.jar文件
https://pan.baidu.com/s/1AucTmTNPSG85hhWF7mkIcQ
構(gòu)建鏡像
docker build -f Dockerfile -t confluence/confluence:6.13.0 .
執(zhí)行結(jié)果
cqj@ubuntu:/var/www/docker/Atlassian/confluence$ sudo docker build -f Dockerfile -t confluence/confluence:6.13.0 .
[sudo] password for cqj:
Sending build context to Docker daemon 976.9kB
Step 1/4 : FROM cptactionhank/atlassian-confluence:6.13.0
6.13.0: Pulling from cptactionhank/atlassian-confluence
4fe2ade4980c: Pull complete
6fc58a8d4ae4: Pull complete
ef87ded15917: Pull complete
99a1f578099a: Pull complete
72baaac031ca: Pull complete
Digest: sha256:a4bc580dcd457f80e515655e4736f1c7ea88b46b420d03a850a4289d0e747473
Status: Downloaded newer image for cptactionhank/atlassian-confluence:6.13.0
---> 8f0611520159
Step 2/4 : USER root
---> Running in 8dfef05ce155
Removing intermediate container 8dfef05ce155
---> 8a2ddbc1b77d
Step 3/4 : COPY "atlassian-agent.jar" /opt/atlassian/confluence/
---> d068d6fc6c23
Step 4/4 : RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/confluence/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/confluence/bin/setenv.sh
---> Running in b31d9e199872
Removing intermediate container b31d9e199872
---> b019d8fadc08
Successfully built b019d8fadc08
Successfully tagged confluence/confluence:6.13.0
cqj@ubuntu:/var/www/docker/Atlassian/confluence$
啟動(dòng)容器
docker run -d -p 8090:8090 confluence/confluence:6.13.0
界面安裝
按照界面引導(dǎo)安裝配置即可
集群暫時(shí)隨便填一個(gè)
注意先安裝jira后安裝confluence,在這個(gè)環(huán)節(jié),可以配置連接到j(luò)ira,綁定jira賬戶
破解confluence
# 設(shè)置產(chǎn)品類型:-p conf, 詳情可執(zhí)行:java -jar atlassian-agent.jar
java -jar atlassian-agent.jar -d -m 421808956@qq.com -n jmcqj -p conf -o http://192.168.8.130:8090 -s BESI-2M4M-IAF7-S4KQ
cqj@ubuntu:/var/www/docker/Atlassian/confluence$ java -jar atlassian-agent.jar -d -m 421808956@qq.com -n jmcqj -p conf -o http://192.168.8.130:8090 -s BNED-V9E1-934R-0OMK
Your license code(Don't copy this line!!!):
AAABWg0ODAoPeJxtUMtugzAQvPsrkHqG2CQkBgmpLXBIyyMKSXp26KZxBIYYEzX9+pqHVKmK5MvOr
Gdm5+kDPo03JgxMDTz3bOI5xNjkO8PGNkaBBKZ4LUKmwO8RExMTUxTdWNkNjH9iZQsohLaQvBmQv
Sh5xZXWLXkBogXjeDfOSjWtN5v9nHkJFq9RJr+Y4O0o0rOaJK5tkSW1qEXm2KPYxaioxcliheI38
JXsAAW1UHqOEsZLf2ETiqnrLJ+vV6uoq3E9V0wqkFO0AYrHJLt7AymrwA+yJIm2wfolRlpIKBBMF
BB9N1zep2Opa+KVfmj6uw79eB3mUWrGxFnRBbUdQhyyRDnIG0hNv6ZRaB7ciJjufLE1cZa8j+5ak
QUg+kzDDZPiY7tNJ4sza+F/51OZB5BtX5mN8u74V/qgO5ilXXUEmZ32rd70TYJ0ZP9B7KnIoY5LV
VwvvyAppr4wLAIUG9GMaCy0y7aVmzXHJK7W8QK+6KECFGaRV7Kgrv/+vl8B63oL1ej9VUYrX02h1
外部數(shù)據(jù)庫設(shè)置
以下只是給了個(gè)參考,你可以使用你已有的數(shù)據(jù)庫主機(jī)及用戶信息。
--創(chuàng)建jira數(shù)據(jù)庫及用戶
create database jiradb character set 'UTF8';
create user jirauser identified by 'jira';
grant all privileges on *.* to 'jirauser'@'%' identified by 'jira' with grant option;
grant all privileges on *.* to 'jirauser'@'localhost' identified by 'jira' with grant option;
flush privileges;
--創(chuàng)建confluence數(shù)據(jù)庫及用戶
create database confdb character set 'UTF8';
create user confuser identified by 'conf';
grant all privileges on *.* to 'confuser'@'%' identified by 'conf' with grant option;
grant all privileges on *.* to 'confuser'@'localhost' identified by 'conf' with grant option;
flush privileges;
-- 設(shè)置confdb事務(wù)級別
show variables like 'tx%';
SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
show variables like 'tx%';
中文亂碼問題
主要針對confluence
首先明確一個(gè)東西,如果confluence寫得文章保存以后出現(xiàn)亂碼,那么只有三種可能:
- 文件系統(tǒng)編碼不正確。不支持中文(上傳的附件中有中文,預(yù)覽出現(xiàn)亂碼,大部分是這個(gè)原因)
- 數(shù)據(jù)庫編碼不正確(大部分是這個(gè)原因)
- 數(shù)據(jù)連接串沒顯示指定編碼(這個(gè)最容易忽略,這次問題也是因?yàn)檫@個(gè))
文件系統(tǒng)編碼不正確
confluence官網(wǎng)提供了專門校驗(yàn)文件系統(tǒng)編碼的方法。 官網(wǎng)推薦檢測文件系統(tǒng)編碼:
https://confluence.atlassian.com/doc/troubleshooting-character-encodings-167194.html
具體方法其實(shí)很簡單,就是用訪問下面的URL,confluence會自動(dòng)檢測編碼的支持程度。
#如果有域名的話可以用這個(gè)URL:
http://confluence.atlassian.com/admin/encodingtest.action
#或者簡單粗暴直接用ip訪問也行
http://<host address>:<port>/admin/encodingtest.action
數(shù)據(jù)庫編碼中文支持
如果文件系統(tǒng)編碼支持中文,那么繼續(xù)下一步檢驗(yàn) 數(shù)據(jù)庫的編碼支持。
調(diào)整數(shù)據(jù)庫亂碼分為三步
- 數(shù)據(jù)庫層面上的字符檢查
- collation層面的編碼檢查
- 表結(jié)構(gòu)層次的編碼檢查
數(shù)據(jù)庫層面上的字符檢查
運(yùn)行下面的sql語句,查看結(jié)果,結(jié)果應(yīng)該如下圖所示
show variables like 'char%';
sql執(zhí)行結(jié)果應(yīng)該如下所示:
character_set_client utf8
character_set_connection utf8
character_set_database utf8
character_set_filesystem binary
character_set_results utf8
character_set_server utf8
character_set_system utf8
character_sets_dir /rdsdbbin/mysql-5.6.27.R1/share/charsets/
如果不是,那么分別執(zhí)行對應(yīng)的sql語句,然后看下是不是修改成了utf8
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
set character_set_system=utf8;
collation層面的編碼檢查
運(yùn)行如下的sql語句
show variables like 'collation%';
上面sql運(yùn)行結(jié)果應(yīng)該如下圖所示:
#結(jié)果應(yīng)該如下
collation_connection utf8_general_ci
collation_database utf8_bin
collation_server utf8_general_ci
如果不是上面所示的結(jié)果,那么執(zhí)行對應(yīng)的sql語句調(diào)整過來
ALTER DATABASE <Confluence database name> CHARACTER SET utf8 COLLATE utf8_bin;
set collation_connection=utf8;
set collation_database=utf8 ;
set collation_server=utf8;
表結(jié)構(gòu)f層次的編碼檢查
執(zhí)行如下兩個(gè)sql,會自動(dòng)生成修改語句, 然后你只用復(fù)制結(jié)果sql,執(zhí)行就可以修復(fù)table層級的編碼
SELECT CONCAT('ALTER TABLE ', table_name, ' CHARACTER SET utf8 COLLATE utf8_bin;') FROM information_schema.TABLES AS T, information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` AS C
WHERE C.collation_name = T.table_collation
AND T.table_schema = 'confluence 數(shù)據(jù)庫名字'
AND
(
C.CHARACTER_SET_NAME != 'utf8'
OR
C.COLLATION_NAME != 'utf8_bin'
);
SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, ' CHARACTER SET UTF8 COLLATE utf8_bin', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'confluence 數(shù)據(jù)庫名字'
AND DATA_TYPE != 'varchar'
AND
(
CHARACTER_SET_NAME != 'utf8'
OR
COLLATION_NAME != 'utf8_bin'
);
經(jīng)過上面步驟,數(shù)據(jù)庫層面的編碼格式已經(jīng)修復(fù)了。
修復(fù)數(shù)據(jù)庫連接串的編碼
vim /var/atlassian/application-data/confluence/confluence.cfg.xml
如果是docker服務(wù),可以進(jìn)入docker后找到confluence.cfg.xml文件修改即可
sudo docker exec [docker-container-id] -it /bin/bash
#找到如下行
<property name="hibernate.connection.url">jdbc:mysql://jira.csphgnawyi6m.us-west-1.rds.amazonaws.com/confluencedb</property>
#修改為
<property name="hibernate.connection.url">jdbc:mysql://jira.csphgnawyi6m.us-west-1.rds.amazonaws.com/confluencedb?useUnicode=true&characterEncoding=UTF-8</property>
關(guān)于mysql中set編碼無效的解決方案
如果以上修改無效的話,可以修改mysql配置文件默認(rèn)編碼:
找到mysql配置文件my.ini或my.cnf
--在 [mysqld] 標(biāo)簽下加上以下內(nèi)容:
character_set_server = utf8
注意:如果此標(biāo)簽下已經(jīng)存在“default-character-set=GBK”類似的內(nèi)容,只需修改成“default-character-set = utf8”,否則這里不添加這個(gè)項(xiàng)。
--在 [mysql] 標(biāo)簽下加上一行
default-character-set = utf8
--在 [mysql.server]標(biāo)簽下加上一行
default-character-set = utf8
--在 [mysqld_safe]標(biāo)簽下加上一行
default-character-set = utf8
--在 [client]標(biāo)簽下加上一行
default-character-set = utf8
重新啟動(dòng)MySql服務(wù)
java環(huán)境
經(jīng)常需要用到j(luò)ava環(huán)境,煩不勝煩,ubuntu下的java環(huán)境快速安裝配置
jdk下載
1.進(jìn)入官網(wǎng)下載頁面
http://www.oracle.com/technetwork/java/javase/downloads/index.html
2.選擇需要的版本,進(jìn)入下載頁面
選中紅框才可以下載
3.下載完成解壓
下載后解壓:
tar -zxvf jdk-13.0.1_linux-x64_bin.tar.gz
假設(shè)安裝目錄是/usr/java下
將解壓后的目錄jdk-13.0.1轉(zhuǎn)移到安裝目錄/usr/java下
解壓完成/usr/java/jdk-13.0.1/
配置java
編輯/etc/profile
sudo vim /etc/profile
###java###
#java安裝目錄
export JAVA_HOME=/usr/java/jdk-13.0.1/
#java 其他配置目錄
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JRE_HOME=$JAVA_HOME/jre
###java###
source profile,讀取并執(zhí)行該腳本,讓配置生效
source /etc/profile
測試java
cqj@ubuntu:~$ java -version
java version "13.0.1" 2019-10-15
Java(TM) SE Runtime Environment (build 13.0.1+9)
Java HotSpot(TM) 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)
cqj@ubuntu:~$ javac -version
javac 13.0.1