溫馨提示:
- 服務器配置至少4核CPU、16GB內存才能較為流暢使用,不推薦個人搭建使用
一、前期準備
1.1 下載相關軟件
-
Confluence
不用下載
1.2 虛擬機安裝CentOS7
1.2.1 安裝步驟
自行百度
1.2.2 linux設置
- 查看系統版本
cat /etc/redhat-release
- 查看系統語言
echo $LANG
- 檢查系統時間
date
- 服務裁剪
setup
保留network、NetworkManager、crond、irqbalance、rsyslog、ssd、sysstat - 關閉防火墻
systemctl stop firewall
- 更改系統啟動等級(使用多用戶命令行)
systemctl set-default multi-user.target
- 更改主機名
vim /etc/sysconfig/network
vim /etc/hosts
vim /etc/hostname
hostnamectl set-hostname <新主機名>
hostname <新主機名>
- 安裝dos2unix
yum install dos2unix -y
- 重啟服務器
reboot
- 更改軟件源
rm -rf /etc/yum.repos.d/*.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all && yum makecache
yum update -y
- 卸載開源jdk
rpm -qa|grep jdk
yum remove -y <packagename>
1.3 CentOS7安裝Oracel JDK
- 安裝oracel的jdk
mkdir -p /usr/local/java
cd /usr/local/java
tar -zxvf jdk-8u171-linux-x64.tar.gz
- 設置環境變量
vim /etc/profile
JAVA_HOME=/usr/local/java/jdk1.8.0_171
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
source /etc/profile
- 查看java版本
java -version
1.4 CentOS7安裝Docker
- 安裝docker-ce
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
docker --version
- 配置docker加速
第一種方式:
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
注意:"registry-mirrors"前的空白符是一個TAB而非空格
systemctl daemon-reload
systemctl restart docker
第二種方式:
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
- 配置docker
dig @114.114.114.114 registry-1.docker.io | grep registry-1.docker.io. | awk -F ' ' '{print$5}'
vim /etc/hosts
xxx.xxx.xxx.xxx registry-1.docker.io
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DNS1=223.5.5.5
DNS2=223.6.6.6
systemctl restart docker
參閱:
- docker報錯Error response from daemon
- 公共DNS
- 修改/etc/resolv.conf又恢復到原來的狀態?
vim /etc/sysconfig/network-scripts/ifcfg-eth0
1.5 CentOS7安裝MySQL5.7
- 創建安裝目錄
mkdir -p /opt/mysql
- 將組件包上傳到安裝目錄下
- 解壓
tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
- 修改目錄名
mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql-5.7.30
- 檢查mysql組和用戶是否存在,如果沒有則創建
cat /etc/group|grep mysql
groupadd mysql
useradd -r -g mysql mysql
- 創建數據目錄
cd /opt/mysql/mysql-5.7.30
mkdir -p data
- 將/opt/mysql/mysql-5.7.30的所有者及所屬組改為mysql
chown -R mysql:mysql /opt/mysql/mysql-5.7.30
- 在/opt/mysql/mysql-5.7.30/support-files目錄下創建my_default.cnf
cd /opt/mysql/mysql-5.7.30/support-files
vim my_default.cnf
[mysqld]
#設置mysql的安裝目錄
basedir = /opt/mysql/mysql-5.7.30
#設置mysql數據庫的數據存放目錄
datadir = /opt/mysql/mysql-5.7.30/data
#設置端口
port = 3306
socket = /tmp/mysql.sock
transaction-isolation=READ-COMMITTED
default-storage-engine=INNODB
innodb_default_row_format=DYNAMIC
innodb_large_prefix=ON
innodb_file_format=Barracuda
innodb_log_file_size=2G
#設置字符集
character-set-server=utf8mb4
#日志存放目錄
log-error = /opt/mysql/mysql-5.7.30/data/mysqld.log
pid-file = /opt/mysql/mysql-5.7.30/data/mysqld.pid
#允許時間類型的數據為零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE,NO_AUTO_VALUE_ON_ZERO)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_AUTO_VALUE_ON_ZERO
cp my_default.cnf /etc/my.cnf
- 初始化數據庫
/opt/mysql/mysql-5.7.30/bin/mysqld --initialize --user=mysql --basedir=/opt/mysql/mysql-5.7.30/ --datadir=/opt/mysql/mysql-5.7.30/data/
- 獲取臨時密碼
cat /opt/mysql/mysql-5.7.30/data/mysqld.log | grep password
- 啟動腳本放到開機初始化目錄
cp /opt/mysql/mysql-5.7.30/support-files/mysql.server /etc/init.d/mysql
- mysql作為系統命令
cp /opt/mysql/mysql-5.7.30/bin/mysql /sbin/
- systemctl啟動腳本
vim /usr/lib/systemd/system/mysql.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
PIDFile=/opt/mysql/mysql-5.7.30/data/mysqld.pid
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Execute pre and post scripts as root
PermissionsStartOnly=true
# Needed to create system tables
#ExecStartPre=/usr/bin/mysqld_pre_systemd
# Start main service
ExecStart=/opt/mysql/mysql-5.7.30/bin/mysqld --daemonize --pid-file=/opt/mysql/mysql-5.7.30/data/mysqld.pid
# 注意這里要加上 --daemonize
# Use this to switch malloc implementation
#EnvironmentFile=-/etc/sysconfig/mysql
# Sets open_files_limit
LimitNOFILE = 5000
Restart=on-failure
RestartPreventExitStatus=1
PrivateTmp=false
- 啟動mysql
chkconfig mysql on
systemctl start mysql
- 進入mysql
mysql -uroot -p
- 執行SQL
-- 更改root登錄密碼及允許遠程訪問
set password=password('123456');
grant all privileges on *.* to root@'%' identified by '123456';
flush privileges;
-- 創建jira數據庫及用戶
create database jira character set utf8mb4 collate utf8mb4_bin;
create user jira identified by 'jiraworker';
grant select,insert,update,delete,create,drop,references,alter,index on jira.* to 'jira'@'%';
flush privileges;
-- 創建confluence數據庫及用戶
create database confluence character set utf8mb4 collate utf8mb4_bin;
create user cf identified by 'cfworker';
grant select,insert,update,delete,create,drop,references,alter,index on confluence.* to 'cf'@'%' ;
flush privileges;
-- 設置confdb事務級別
show variables like 'tx%';
set global tx_isolation='READ-COMMITTED';
set session transaction isolation level read committed;
show variables like 'tx%';
flush privileges;
-- 退出
exit;
- 重啟mysql服務
systemctl restart mysql
參閱:
1.6 CentOS7安裝Portainer
- 下載鏡像
docker pull portainer/portainer
- 啟動容器
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --name portainer portainer/portainer
- 訪問界面
<虛擬機IP>:9000
二、開始安裝
- 創建文件目錄
mkdir -p /home/jira
mkdir -p /home/confluence
2.1 安裝Jira
2.1.1 第一種方式:docker安裝Jira
- 編寫Dockerfile文件
cd /home/jira
vim Dockerfile
FROM cptactionhank/atlassian-jira-software:8.1.0
USER root
# 將代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/jira/
# 設置啟動加載代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
- atlassian-extras-3.2.jar上傳到/home/jira
- 構建鏡像
docker build -f Dockerfile -t jira/jira:v8.1.0 .
啟動容器
docker run --detach --publish 8080:8080 --name jira -e JAVA_OPTS='-Xmx512m' jira/jira:v8.1.0
或
docker run --detach --publish 8080:8080 --name jira jira/jira:v8.1.0
訪問Jira安裝界面(界面多等等,加載慢)
<虛擬機IP>:8080
提示:
- 數據庫類型選擇MySQL5.7(報錯就選擇MySQL5.6)
- 數據庫、用戶名及密碼:jira、jira、jiraworker
- 生成jira密鑰
java -jar /home/jira/atlassian-agent.jar -d -m test@test.com -n Test -p jira -o http://<虛擬機IP> -s <服務ID>
-m test@test.com -n Test
中test@test.com
修改為自己的郵箱,Test
為個人的名稱
【界面演示】
2.1.2 第二種方式:官方安裝包
暫未提供
參閱:
2.2 安裝CF
2.2.1 第一種方式:docker安裝CF
- 編寫Dockerfile文件
cd /home/confluence
vim Dockerfile
FROM cptactionhank/atlassian-confluence:7.4.0
USER root
# 將代理破解包加入容器
COPY "atlassian-agent.jar" /opt/atlassian/confluence/
# 設置啟動加載代理包
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/confluence/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/confluence/bin/setenv.sh
- atlassian-extras-3.2.jar上傳到/home/confluence
- 構建鏡像
docker build -f Dockerfile -t confluence/confluence:v7.4.0 .
啟動容器
docker run --detach --publish 8090:8090 --name confluence -e JAVA_OPTS='-Xmx512m' confluence/confluence:v7.4.0
或
docker run --detach --publish 8090:8090 --name confluence confluence/confluence:v7.4.0
訪問CF安裝界面(界面多等等,加載慢)
<虛擬機IP>:8090
提示:
- 數據庫類型選擇MySQL5.7(報錯就選擇MySQL5.6)
- 數據庫、用戶名及密碼:confluence、cf、cf
- 生成jira密鑰
java -jar /home/confluence/atlassian-agent.jar -d -m test@test.com -n Test -p conf -o http://<虛擬機IP> -s <服務ID>
-m test@test.com -n Test
中test@test.com
修改為自己的郵箱,Test
為個人的名稱
【界面演示】
2.2.2 第二種方式:官方安裝包
暫未提供
參閱:
參閱:
更新中......