Docker 安装 jira笔记
在 /opt/jira
目录下,新建一个 名为 Dockerfile
的文件, 内容如下
FROM cptactionhank/atlassian-jira-software:latest
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
构建容器
docker build -t jira/jira:latest .
启动容器
docker run -id --name=jiar -p 8099:8080 jira/jira:latest
-p: 代表端口映射,格式为 宿主机映射端口:容器运行端口
- 下载atlassian-agent.jar文件
百度网盘地址:
链接:https://pan.baidu.com/s/17zNwlp3sd1PLSCxPVjDwfQ
提取码:b84z
- 访问地址
http://ip:8099
选择 我将设置它自己
我选择连接的是 mysql 5.7,用户名和密码,数据库名都是 jiradb
填写好信息之后,可以点击 测试连接
来测试填写的 mysql 连接信息是否正确,如果正确,就进入下一步
这一步我们使用默认即可,也可以按具体情况进行修改
注意:上图中的Mode中,我们在此使用的是Private(私有)模式,在这个模式下,用户的创建需要由管理员创建。而在Public(共用)模式下,用户是可以自己进行注册。
下面这个页面是需要我们输入jira的license,如下:
- 破解
5.1. 复制服务器ID
5.2. 进入运行的jira的容器中,按Dockerfile中的"atlassian-agent.jar"的目录 /opt/atlassian/jira/
下执行命令,生成许可证:
进入容器:
sudo docker exec -ti jira /bin/bash
进入容器中执行命令:
# 只需要替换你的访问地址(http://192.168.0.41)、服务器ID(BY9B-GWD1-1C78-K2DE)
cd /opt/atlassian/jira
java -jar atlassian-agent.jar -d -m test@test.com -n BAT -p jira -o http://192.168.0.41 -s B5BP-G88A-XY6K-2S4L
将生成的许可复制到页面,完成破解
破解完毕之后,就会进入设置 管理员的用户名和密码,电邮通知(SMTP)。
设置完毕之后,就可以进入到 jira 首页了。
mysql 5.7
mysql 5.7 镜像
docker run -id --name=mysql57 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7
Connecting Jira applications to MySQL 5.7
创建 数据库名为: jiradb
的数据库
CREATE DATABASE jiradb CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
设置 jiradb
的权限给 jiradb
,密码为 jiradb
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,REFERENCES,ALTER,INDEX on jiradb.* TO 'jiradb'@'%' IDENTIFIED BY 'jiradb';
flush privileges;
拷贝容器中的mysqld.cnf文件到当前主机中
docker cp mysql57:./etc/mysql/mysql.conf.d/mysqld.cnf ./temp/mysql/mysqld.cnf
格式:
docker cp [容器名称]:.[容器内文件的绝对路径] [当前主机存放文件的绝对路径]
按照 jira的文档 修改
mysqld.cnf
,在[mysqld]
标签下面添加
[mysqld]
default-storage-engine=INNODB
character_set_server=utf8mb4
innodb_large_prefix=ON
innodb_file_format=Barracuda
innodb_log_file_size=2G
再将文件复制到容器中
sudo docker cp ./temp/mysql/mysqld.cnf \
mysql57:./etc/mysql/mysql.conf.d/mysqld.cnf
重启mysql容器
sudo docker restart mysql57
登录 阿里云镜像
sudo docker login --username=xxx@163.com registry.cn-hangzhou.aliyuncs.com
登出阿里云镜像
sudo docker logout registry.cn-hangzhou.aliyuncs.com
安装docker PostgreSQL
docker run --name postgresdb -p 5432:5432 -e POSTGRES_PASSWORD=root -d postgres
docker run -d --name confluence -p 8090:8090 --user root:root cptactionhank/atlassian-confluence
docker-compose.yml 内容:
version: '2'
networks:
backend:
driver: bridge
services:
jira:
container_name: jira
image: jira/jira
stdin_open: true
tty: true
restart: always
ports:
- 8099:8080
networks:
- backend
mysql5:
container_name: mysql57
image: mysql:5
stdin_open: true
tty: true
restart: always
command: --default-authentication-plugin=mysql_native_password
volumes:
- /data/mysql/mysql:/var/lib/mysql
ports:
- 3307:3306
environment:
- MYSQL_DATABASE=default
- MYSQL_USER=default
- MYSQL_PASSWORD=default
- MYSQL_ROOT_PASSWORD=root
networks:
- backend