From bc5732257a818c56f22805cd15312dc9b2004b5d Mon Sep 17 00:00:00 2001 From: STAM Date: Thu, 27 Feb 2020 14:19:13 +0300 Subject: [PATCH] moved versioned jira7 images to another repository --- .travis.yml | 366 ------------------ .../jira/6/6.3.15/.docker-repository.yml | 1 - atlassian/jira/6/6.3.15/.dockerignore | 3 - atlassian/jira/6/6.3.15/Dockerfile | 46 --- atlassian/jira/6/6.3.15/Makefile | 5 - atlassian/jira/6/6.3.15/README.md | 151 -------- atlassian/jira/6/6.3.15/entrypoint.sh | 89 ----- .../jira/6/6.4.14/.docker-repository.yml | 1 - atlassian/jira/6/6.4.14/.dockerignore | 3 - atlassian/jira/6/6.4.14/Dockerfile | 46 --- atlassian/jira/6/6.4.14/Makefile | 5 - atlassian/jira/6/6.4.14/README.md | 151 -------- atlassian/jira/6/6.4.14/entrypoint.sh | 89 ----- atlassian/jira/7/7.0.0/.docker-repository.yml | 1 - atlassian/jira/7/7.0.0/.dockerignore | 3 - atlassian/jira/7/7.0.0/Dockerfile | 47 --- atlassian/jira/7/7.0.0/Makefile | 4 - atlassian/jira/7/7.0.0/README.md | 151 -------- atlassian/jira/7/7.0.0/entrypoint.sh | 89 ----- .../jira/7/7.0.10/.docker-repository.yml | 1 - atlassian/jira/7/7.0.10/.dockerignore | 3 - atlassian/jira/7/7.0.10/Dockerfile | 47 --- atlassian/jira/7/7.0.10/Makefile | 4 - atlassian/jira/7/7.0.10/README.md | 151 -------- atlassian/jira/7/7.0.10/entrypoint.sh | 89 ----- .../jira/7/7.0.11/.docker-repository.yml | 1 - atlassian/jira/7/7.0.11/.dockerignore | 3 - atlassian/jira/7/7.0.11/Dockerfile | 47 --- atlassian/jira/7/7.0.11/Makefile | 4 - atlassian/jira/7/7.0.11/README.md | 151 -------- atlassian/jira/7/7.0.11/entrypoint.sh | 89 ----- atlassian/jira/7/7.0.2/.docker-repository.yml | 1 - atlassian/jira/7/7.0.2/.dockerignore | 3 - atlassian/jira/7/7.0.2/Dockerfile | 47 --- atlassian/jira/7/7.0.2/Makefile | 4 - atlassian/jira/7/7.0.2/README.md | 151 -------- atlassian/jira/7/7.0.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.0.4/.docker-repository.yml | 1 - atlassian/jira/7/7.0.4/.dockerignore | 3 - atlassian/jira/7/7.0.4/Dockerfile | 47 --- atlassian/jira/7/7.0.4/Makefile | 4 - atlassian/jira/7/7.0.4/README.md | 151 -------- atlassian/jira/7/7.0.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.0.5/.docker-repository.yml | 1 - atlassian/jira/7/7.0.5/.dockerignore | 3 - atlassian/jira/7/7.0.5/Dockerfile | 47 --- atlassian/jira/7/7.0.5/Makefile | 4 - atlassian/jira/7/7.0.5/README.md | 151 -------- atlassian/jira/7/7.0.5/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.0/.docker-repository.yml | 1 - atlassian/jira/7/7.1.0/.dockerignore | 3 - atlassian/jira/7/7.1.0/Dockerfile | 47 --- atlassian/jira/7/7.1.0/Makefile | 4 - atlassian/jira/7/7.1.0/README.md | 151 -------- atlassian/jira/7/7.1.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.1/.docker-repository.yml | 1 - atlassian/jira/7/7.1.1/.dockerignore | 3 - atlassian/jira/7/7.1.1/Dockerfile | 47 --- atlassian/jira/7/7.1.1/Makefile | 4 - atlassian/jira/7/7.1.1/README.md | 151 -------- atlassian/jira/7/7.1.1/entrypoint.sh | 89 ----- .../jira/7/7.1.10/.docker-repository.yml | 1 - atlassian/jira/7/7.1.10/.dockerignore | 3 - atlassian/jira/7/7.1.10/Dockerfile | 47 --- atlassian/jira/7/7.1.10/Makefile | 4 - atlassian/jira/7/7.1.10/README.md | 151 -------- atlassian/jira/7/7.1.10/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.2/.docker-repository.yml | 1 - atlassian/jira/7/7.1.2/.dockerignore | 3 - atlassian/jira/7/7.1.2/Dockerfile | 47 --- atlassian/jira/7/7.1.2/Makefile | 4 - atlassian/jira/7/7.1.2/README.md | 151 -------- atlassian/jira/7/7.1.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.4/.docker-repository.yml | 1 - atlassian/jira/7/7.1.4/.dockerignore | 3 - atlassian/jira/7/7.1.4/Dockerfile | 47 --- atlassian/jira/7/7.1.4/Makefile | 4 - atlassian/jira/7/7.1.4/README.md | 151 -------- atlassian/jira/7/7.1.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.6/.docker-repository.yml | 1 - atlassian/jira/7/7.1.6/.dockerignore | 3 - atlassian/jira/7/7.1.6/Dockerfile | 47 --- atlassian/jira/7/7.1.6/Makefile | 4 - atlassian/jira/7/7.1.6/README.md | 151 -------- atlassian/jira/7/7.1.6/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.7/.docker-repository.yml | 1 - atlassian/jira/7/7.1.7/.dockerignore | 3 - atlassian/jira/7/7.1.7/Dockerfile | 47 --- atlassian/jira/7/7.1.7/Makefile | 4 - atlassian/jira/7/7.1.7/README.md | 151 -------- atlassian/jira/7/7.1.7/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.8/.docker-repository.yml | 1 - atlassian/jira/7/7.1.8/.dockerignore | 3 - atlassian/jira/7/7.1.8/Dockerfile | 47 --- atlassian/jira/7/7.1.8/Makefile | 4 - atlassian/jira/7/7.1.8/README.md | 151 -------- atlassian/jira/7/7.1.8/entrypoint.sh | 89 ----- atlassian/jira/7/7.1.9/.docker-repository.yml | 1 - atlassian/jira/7/7.1.9/.dockerignore | 3 - atlassian/jira/7/7.1.9/Dockerfile | 47 --- atlassian/jira/7/7.1.9/Makefile | 4 - atlassian/jira/7/7.1.9/README.md | 151 -------- atlassian/jira/7/7.1.9/entrypoint.sh | 89 ----- .../jira/7/7.10.0/.docker-repository.yml | 1 - atlassian/jira/7/7.10.0/.dockerignore | 3 - atlassian/jira/7/7.10.0/Dockerfile | 47 --- atlassian/jira/7/7.10.0/Makefile | 4 - atlassian/jira/7/7.10.0/README.md | 151 -------- atlassian/jira/7/7.10.0/entrypoint.sh | 89 ----- .../jira/7/7.10.1/.docker-repository.yml | 1 - atlassian/jira/7/7.10.1/.dockerignore | 3 - atlassian/jira/7/7.10.1/Dockerfile | 47 --- atlassian/jira/7/7.10.1/Makefile | 4 - atlassian/jira/7/7.10.1/README.md | 151 -------- atlassian/jira/7/7.10.1/entrypoint.sh | 89 ----- .../jira/7/7.10.2/.docker-repository.yml | 1 - atlassian/jira/7/7.10.2/.dockerignore | 3 - atlassian/jira/7/7.10.2/Dockerfile | 47 --- atlassian/jira/7/7.10.2/Makefile | 4 - atlassian/jira/7/7.10.2/README.md | 151 -------- atlassian/jira/7/7.10.2/entrypoint.sh | 89 ----- .../jira/7/7.11.0/.docker-repository.yml | 1 - atlassian/jira/7/7.11.0/.dockerignore | 3 - atlassian/jira/7/7.11.0/Dockerfile | 47 --- atlassian/jira/7/7.11.0/Makefile | 4 - atlassian/jira/7/7.11.0/README.md | 151 -------- atlassian/jira/7/7.11.0/entrypoint.sh | 89 ----- .../jira/7/7.11.1/.docker-repository.yml | 1 - atlassian/jira/7/7.11.1/.dockerignore | 3 - atlassian/jira/7/7.11.1/Dockerfile | 47 --- atlassian/jira/7/7.11.1/Makefile | 4 - atlassian/jira/7/7.11.1/README.md | 151 -------- atlassian/jira/7/7.11.1/entrypoint.sh | 89 ----- .../jira/7/7.11.2/.docker-repository.yml | 1 - atlassian/jira/7/7.11.2/.dockerignore | 3 - atlassian/jira/7/7.11.2/Dockerfile | 47 --- atlassian/jira/7/7.11.2/Makefile | 4 - atlassian/jira/7/7.11.2/README.md | 151 -------- atlassian/jira/7/7.11.2/entrypoint.sh | 89 ----- .../jira/7/7.12.0/.docker-repository.yml | 1 - atlassian/jira/7/7.12.0/.dockerignore | 3 - atlassian/jira/7/7.12.0/Dockerfile | 47 --- atlassian/jira/7/7.12.0/Makefile | 4 - atlassian/jira/7/7.12.0/README.md | 151 -------- atlassian/jira/7/7.12.0/entrypoint.sh | 89 ----- .../jira/7/7.12.1/.docker-repository.yml | 1 - atlassian/jira/7/7.12.1/.dockerignore | 3 - atlassian/jira/7/7.12.1/Dockerfile | 47 --- atlassian/jira/7/7.12.1/Makefile | 4 - atlassian/jira/7/7.12.1/README.md | 151 -------- atlassian/jira/7/7.12.1/entrypoint.sh | 89 ----- .../jira/7/7.12.3/.docker-repository.yml | 1 - atlassian/jira/7/7.12.3/.dockerignore | 3 - atlassian/jira/7/7.12.3/Dockerfile | 47 --- atlassian/jira/7/7.12.3/Makefile | 4 - atlassian/jira/7/7.12.3/README.md | 151 -------- atlassian/jira/7/7.12.3/entrypoint.sh | 89 ----- .../jira/7/7.13.0/.docker-repository.yml | 1 - atlassian/jira/7/7.13.0/.dockerignore | 3 - atlassian/jira/7/7.13.0/Dockerfile | 47 --- atlassian/jira/7/7.13.0/Makefile | 4 - atlassian/jira/7/7.13.0/README.md | 151 -------- atlassian/jira/7/7.13.0/entrypoint.sh | 89 ----- .../jira/7/7.13.1/.docker-repository.yml | 1 - atlassian/jira/7/7.13.1/.dockerignore | 3 - atlassian/jira/7/7.13.1/Dockerfile | 47 --- atlassian/jira/7/7.13.1/Makefile | 4 - atlassian/jira/7/7.13.1/README.md | 151 -------- atlassian/jira/7/7.13.1/entrypoint.sh | 89 ----- .../jira/7/7.13.11/.docker-repository.yml | 1 - atlassian/jira/7/7.13.11/.dockerignore | 3 - atlassian/jira/7/7.13.11/Dockerfile | 47 --- atlassian/jira/7/7.13.11/Makefile | 4 - atlassian/jira/7/7.13.11/README.md | 151 -------- atlassian/jira/7/7.13.11/entrypoint.sh | 89 ----- .../jira/7/7.13.2/.docker-repository.yml | 1 - atlassian/jira/7/7.13.2/.dockerignore | 3 - atlassian/jira/7/7.13.2/Dockerfile | 47 --- atlassian/jira/7/7.13.2/Makefile | 4 - atlassian/jira/7/7.13.2/README.md | 151 -------- atlassian/jira/7/7.13.2/entrypoint.sh | 89 ----- .../jira/7/7.13.3/.docker-repository.yml | 1 - atlassian/jira/7/7.13.3/.dockerignore | 3 - atlassian/jira/7/7.13.3/Dockerfile | 47 --- atlassian/jira/7/7.13.3/Makefile | 4 - atlassian/jira/7/7.13.3/README.md | 151 -------- atlassian/jira/7/7.13.3/entrypoint.sh | 89 ----- .../jira/7/7.13.4/.docker-repository.yml | 1 - atlassian/jira/7/7.13.4/.dockerignore | 3 - atlassian/jira/7/7.13.4/Dockerfile | 47 --- atlassian/jira/7/7.13.4/Makefile | 4 - atlassian/jira/7/7.13.4/README.md | 151 -------- atlassian/jira/7/7.13.4/entrypoint.sh | 89 ----- .../jira/7/7.13.5/.docker-repository.yml | 1 - atlassian/jira/7/7.13.5/.dockerignore | 3 - atlassian/jira/7/7.13.5/Dockerfile | 47 --- atlassian/jira/7/7.13.5/Makefile | 4 - atlassian/jira/7/7.13.5/README.md | 151 -------- atlassian/jira/7/7.13.5/entrypoint.sh | 89 ----- .../jira/7/7.13.6/.docker-repository.yml | 1 - atlassian/jira/7/7.13.6/.dockerignore | 3 - atlassian/jira/7/7.13.6/Dockerfile | 47 --- atlassian/jira/7/7.13.6/Makefile | 4 - atlassian/jira/7/7.13.6/README.md | 151 -------- atlassian/jira/7/7.13.6/entrypoint.sh | 89 ----- .../jira/7/7.13.8/.docker-repository.yml | 1 - atlassian/jira/7/7.13.8/.dockerignore | 3 - atlassian/jira/7/7.13.8/Dockerfile | 47 --- atlassian/jira/7/7.13.8/Makefile | 4 - atlassian/jira/7/7.13.8/README.md | 151 -------- atlassian/jira/7/7.13.8/entrypoint.sh | 89 ----- .../jira/7/7.13.9/.docker-repository.yml | 1 - atlassian/jira/7/7.13.9/.dockerignore | 3 - atlassian/jira/7/7.13.9/Dockerfile | 47 --- atlassian/jira/7/7.13.9/Makefile | 4 - atlassian/jira/7/7.13.9/README.md | 151 -------- atlassian/jira/7/7.13.9/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.0/.docker-repository.yml | 1 - atlassian/jira/7/7.2.0/.dockerignore | 3 - atlassian/jira/7/7.2.0/Dockerfile | 47 --- atlassian/jira/7/7.2.0/Makefile | 4 - atlassian/jira/7/7.2.0/README.md | 151 -------- atlassian/jira/7/7.2.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.1/.docker-repository.yml | 1 - atlassian/jira/7/7.2.1/.dockerignore | 3 - atlassian/jira/7/7.2.1/Dockerfile | 47 --- atlassian/jira/7/7.2.1/Makefile | 4 - atlassian/jira/7/7.2.1/README.md | 151 -------- atlassian/jira/7/7.2.1/entrypoint.sh | 89 ----- .../jira/7/7.2.10/.docker-repository.yml | 1 - atlassian/jira/7/7.2.10/.dockerignore | 3 - atlassian/jira/7/7.2.10/Dockerfile | 47 --- atlassian/jira/7/7.2.10/Makefile | 4 - atlassian/jira/7/7.2.10/README.md | 151 -------- atlassian/jira/7/7.2.10/entrypoint.sh | 89 ----- .../jira/7/7.2.11/.docker-repository.yml | 1 - atlassian/jira/7/7.2.11/.dockerignore | 3 - atlassian/jira/7/7.2.11/Dockerfile | 47 --- atlassian/jira/7/7.2.11/Makefile | 4 - atlassian/jira/7/7.2.11/README.md | 151 -------- atlassian/jira/7/7.2.11/entrypoint.sh | 89 ----- .../jira/7/7.2.12/.docker-repository.yml | 1 - atlassian/jira/7/7.2.12/.dockerignore | 3 - atlassian/jira/7/7.2.12/Dockerfile | 47 --- atlassian/jira/7/7.2.12/Makefile | 4 - atlassian/jira/7/7.2.12/README.md | 151 -------- atlassian/jira/7/7.2.12/entrypoint.sh | 89 ----- .../jira/7/7.2.13/.docker-repository.yml | 1 - atlassian/jira/7/7.2.13/.dockerignore | 3 - atlassian/jira/7/7.2.13/Dockerfile | 47 --- atlassian/jira/7/7.2.13/Makefile | 4 - atlassian/jira/7/7.2.13/README.md | 151 -------- atlassian/jira/7/7.2.13/entrypoint.sh | 89 ----- .../jira/7/7.2.14/.docker-repository.yml | 1 - atlassian/jira/7/7.2.14/.dockerignore | 3 - atlassian/jira/7/7.2.14/Dockerfile | 47 --- atlassian/jira/7/7.2.14/Makefile | 4 - atlassian/jira/7/7.2.14/README.md | 151 -------- atlassian/jira/7/7.2.14/entrypoint.sh | 89 ----- .../jira/7/7.2.15/.docker-repository.yml | 1 - atlassian/jira/7/7.2.15/.dockerignore | 3 - atlassian/jira/7/7.2.15/Dockerfile | 47 --- atlassian/jira/7/7.2.15/Makefile | 4 - atlassian/jira/7/7.2.15/README.md | 151 -------- atlassian/jira/7/7.2.15/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.2/.docker-repository.yml | 1 - atlassian/jira/7/7.2.2/.dockerignore | 3 - atlassian/jira/7/7.2.2/Dockerfile | 47 --- atlassian/jira/7/7.2.2/Makefile | 4 - atlassian/jira/7/7.2.2/README.md | 151 -------- atlassian/jira/7/7.2.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.3/.docker-repository.yml | 1 - atlassian/jira/7/7.2.3/.dockerignore | 3 - atlassian/jira/7/7.2.3/Dockerfile | 47 --- atlassian/jira/7/7.2.3/Makefile | 4 - atlassian/jira/7/7.2.3/README.md | 151 -------- atlassian/jira/7/7.2.3/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.4/.docker-repository.yml | 1 - atlassian/jira/7/7.2.4/.dockerignore | 3 - atlassian/jira/7/7.2.4/Dockerfile | 47 --- atlassian/jira/7/7.2.4/Makefile | 4 - atlassian/jira/7/7.2.4/README.md | 151 -------- atlassian/jira/7/7.2.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.6/.docker-repository.yml | 1 - atlassian/jira/7/7.2.6/.dockerignore | 3 - atlassian/jira/7/7.2.6/Dockerfile | 47 --- atlassian/jira/7/7.2.6/Makefile | 4 - atlassian/jira/7/7.2.6/README.md | 151 -------- atlassian/jira/7/7.2.6/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.7/.docker-repository.yml | 1 - atlassian/jira/7/7.2.7/.dockerignore | 3 - atlassian/jira/7/7.2.7/Dockerfile | 47 --- atlassian/jira/7/7.2.7/Makefile | 4 - atlassian/jira/7/7.2.7/README.md | 151 -------- atlassian/jira/7/7.2.7/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.8/.docker-repository.yml | 1 - atlassian/jira/7/7.2.8/.dockerignore | 3 - atlassian/jira/7/7.2.8/Dockerfile | 47 --- atlassian/jira/7/7.2.8/Makefile | 4 - atlassian/jira/7/7.2.8/README.md | 151 -------- atlassian/jira/7/7.2.8/entrypoint.sh | 89 ----- atlassian/jira/7/7.2.9/.docker-repository.yml | 1 - atlassian/jira/7/7.2.9/.dockerignore | 3 - atlassian/jira/7/7.2.9/Dockerfile | 47 --- atlassian/jira/7/7.2.9/Makefile | 4 - atlassian/jira/7/7.2.9/README.md | 151 -------- atlassian/jira/7/7.2.9/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.0/.docker-repository.yml | 1 - atlassian/jira/7/7.3.0/.dockerignore | 3 - atlassian/jira/7/7.3.0/Dockerfile | 47 --- atlassian/jira/7/7.3.0/Makefile | 4 - atlassian/jira/7/7.3.0/README.md | 151 -------- atlassian/jira/7/7.3.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.1/.docker-repository.yml | 1 - atlassian/jira/7/7.3.1/.dockerignore | 3 - atlassian/jira/7/7.3.1/Dockerfile | 47 --- atlassian/jira/7/7.3.1/Makefile | 4 - atlassian/jira/7/7.3.1/README.md | 151 -------- atlassian/jira/7/7.3.1/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.2/.docker-repository.yml | 1 - atlassian/jira/7/7.3.2/.dockerignore | 3 - atlassian/jira/7/7.3.2/Dockerfile | 47 --- atlassian/jira/7/7.3.2/Makefile | 4 - atlassian/jira/7/7.3.2/README.md | 151 -------- atlassian/jira/7/7.3.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.3/.docker-repository.yml | 1 - atlassian/jira/7/7.3.3/.dockerignore | 3 - atlassian/jira/7/7.3.3/Dockerfile | 47 --- atlassian/jira/7/7.3.3/Makefile | 4 - atlassian/jira/7/7.3.3/README.md | 151 -------- atlassian/jira/7/7.3.3/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.4/.docker-repository.yml | 1 - atlassian/jira/7/7.3.4/.dockerignore | 3 - atlassian/jira/7/7.3.4/Dockerfile | 47 --- atlassian/jira/7/7.3.4/Makefile | 4 - atlassian/jira/7/7.3.4/README.md | 151 -------- atlassian/jira/7/7.3.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.5/.docker-repository.yml | 1 - atlassian/jira/7/7.3.5/.dockerignore | 3 - atlassian/jira/7/7.3.5/Dockerfile | 47 --- atlassian/jira/7/7.3.5/Makefile | 4 - atlassian/jira/7/7.3.5/README.md | 151 -------- atlassian/jira/7/7.3.5/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.6/.docker-repository.yml | 1 - atlassian/jira/7/7.3.6/.dockerignore | 3 - atlassian/jira/7/7.3.6/Dockerfile | 47 --- atlassian/jira/7/7.3.6/Makefile | 4 - atlassian/jira/7/7.3.6/README.md | 151 -------- atlassian/jira/7/7.3.6/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.7/.docker-repository.yml | 1 - atlassian/jira/7/7.3.7/.dockerignore | 3 - atlassian/jira/7/7.3.7/Dockerfile | 47 --- atlassian/jira/7/7.3.7/Makefile | 4 - atlassian/jira/7/7.3.7/README.md | 151 -------- atlassian/jira/7/7.3.7/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.8/.docker-repository.yml | 1 - atlassian/jira/7/7.3.8/.dockerignore | 3 - atlassian/jira/7/7.3.8/Dockerfile | 47 --- atlassian/jira/7/7.3.8/Makefile | 4 - atlassian/jira/7/7.3.8/README.md | 151 -------- atlassian/jira/7/7.3.8/entrypoint.sh | 89 ----- atlassian/jira/7/7.3.9/.docker-repository.yml | 1 - atlassian/jira/7/7.3.9/.dockerignore | 3 - atlassian/jira/7/7.3.9/Dockerfile | 47 --- atlassian/jira/7/7.3.9/Makefile | 4 - atlassian/jira/7/7.3.9/README.md | 151 -------- atlassian/jira/7/7.3.9/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.0/.docker-repository.yml | 1 - atlassian/jira/7/7.4.0/.dockerignore | 3 - atlassian/jira/7/7.4.0/Dockerfile | 47 --- atlassian/jira/7/7.4.0/Makefile | 4 - atlassian/jira/7/7.4.0/README.md | 151 -------- atlassian/jira/7/7.4.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.1/.docker-repository.yml | 1 - atlassian/jira/7/7.4.1/.dockerignore | 3 - atlassian/jira/7/7.4.1/Dockerfile | 47 --- atlassian/jira/7/7.4.1/Makefile | 4 - atlassian/jira/7/7.4.1/README.md | 151 -------- atlassian/jira/7/7.4.1/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.2/.docker-repository.yml | 1 - atlassian/jira/7/7.4.2/.dockerignore | 3 - atlassian/jira/7/7.4.2/Dockerfile | 47 --- atlassian/jira/7/7.4.2/Makefile | 4 - atlassian/jira/7/7.4.2/README.md | 151 -------- atlassian/jira/7/7.4.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.3/.docker-repository.yml | 1 - atlassian/jira/7/7.4.3/.dockerignore | 3 - atlassian/jira/7/7.4.3/Dockerfile | 47 --- atlassian/jira/7/7.4.3/Makefile | 4 - atlassian/jira/7/7.4.3/README.md | 151 -------- atlassian/jira/7/7.4.3/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.4/.docker-repository.yml | 1 - atlassian/jira/7/7.4.4/.dockerignore | 3 - atlassian/jira/7/7.4.4/Dockerfile | 47 --- atlassian/jira/7/7.4.4/Makefile | 4 - atlassian/jira/7/7.4.4/README.md | 151 -------- atlassian/jira/7/7.4.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.5/.docker-repository.yml | 1 - atlassian/jira/7/7.4.5/.dockerignore | 3 - atlassian/jira/7/7.4.5/Dockerfile | 47 --- atlassian/jira/7/7.4.5/Makefile | 4 - atlassian/jira/7/7.4.5/README.md | 151 -------- atlassian/jira/7/7.4.5/entrypoint.sh | 89 ----- atlassian/jira/7/7.4.6/.docker-repository.yml | 1 - atlassian/jira/7/7.4.6/.dockerignore | 3 - atlassian/jira/7/7.4.6/Dockerfile | 47 --- atlassian/jira/7/7.4.6/Makefile | 4 - atlassian/jira/7/7.4.6/README.md | 151 -------- atlassian/jira/7/7.4.6/entrypoint.sh | 89 ----- atlassian/jira/7/7.5.0/.docker-repository.yml | 1 - atlassian/jira/7/7.5.0/.dockerignore | 3 - atlassian/jira/7/7.5.0/Dockerfile | 47 --- atlassian/jira/7/7.5.0/Makefile | 4 - atlassian/jira/7/7.5.0/README.md | 151 -------- atlassian/jira/7/7.5.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.5.1/.docker-repository.yml | 1 - atlassian/jira/7/7.5.1/.dockerignore | 3 - atlassian/jira/7/7.5.1/Dockerfile | 47 --- atlassian/jira/7/7.5.1/Makefile | 4 - atlassian/jira/7/7.5.1/README.md | 151 -------- atlassian/jira/7/7.5.1/entrypoint.sh | 89 ----- atlassian/jira/7/7.5.2/.docker-repository.yml | 1 - atlassian/jira/7/7.5.2/.dockerignore | 3 - atlassian/jira/7/7.5.2/Dockerfile | 47 --- atlassian/jira/7/7.5.2/Makefile | 4 - atlassian/jira/7/7.5.2/README.md | 151 -------- atlassian/jira/7/7.5.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.5.3/.docker-repository.yml | 1 - atlassian/jira/7/7.5.3/.dockerignore | 3 - atlassian/jira/7/7.5.3/Dockerfile | 47 --- atlassian/jira/7/7.5.3/Makefile | 4 - atlassian/jira/7/7.5.3/README.md | 151 -------- atlassian/jira/7/7.5.3/entrypoint.sh | 89 ----- atlassian/jira/7/7.5.4/.docker-repository.yml | 1 - atlassian/jira/7/7.5.4/.dockerignore | 3 - atlassian/jira/7/7.5.4/Dockerfile | 47 --- atlassian/jira/7/7.5.4/Makefile | 4 - atlassian/jira/7/7.5.4/README.md | 151 -------- atlassian/jira/7/7.5.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.0/.docker-repository.yml | 1 - atlassian/jira/7/7.6.0/.dockerignore | 3 - atlassian/jira/7/7.6.0/Dockerfile | 47 --- atlassian/jira/7/7.6.0/Makefile | 4 - atlassian/jira/7/7.6.0/README.md | 151 -------- atlassian/jira/7/7.6.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.1/.docker-repository.yml | 1 - atlassian/jira/7/7.6.1/.dockerignore | 3 - atlassian/jira/7/7.6.1/Dockerfile | 47 --- atlassian/jira/7/7.6.1/Makefile | 4 - atlassian/jira/7/7.6.1/README.md | 151 -------- atlassian/jira/7/7.6.1/entrypoint.sh | 89 ----- .../jira/7/7.6.10/.docker-repository.yml | 1 - atlassian/jira/7/7.6.10/.dockerignore | 3 - atlassian/jira/7/7.6.10/Dockerfile | 47 --- atlassian/jira/7/7.6.10/Makefile | 4 - atlassian/jira/7/7.6.10/README.md | 151 -------- atlassian/jira/7/7.6.10/entrypoint.sh | 89 ----- .../jira/7/7.6.11/.docker-repository.yml | 1 - atlassian/jira/7/7.6.11/.dockerignore | 3 - atlassian/jira/7/7.6.11/Dockerfile | 47 --- atlassian/jira/7/7.6.11/Makefile | 4 - atlassian/jira/7/7.6.11/README.md | 151 -------- atlassian/jira/7/7.6.11/entrypoint.sh | 89 ----- .../jira/7/7.6.12/.docker-repository.yml | 1 - atlassian/jira/7/7.6.12/.dockerignore | 3 - atlassian/jira/7/7.6.12/Dockerfile | 47 --- atlassian/jira/7/7.6.12/Makefile | 4 - atlassian/jira/7/7.6.12/README.md | 151 -------- atlassian/jira/7/7.6.12/entrypoint.sh | 89 ----- .../jira/7/7.6.13/.docker-repository.yml | 1 - atlassian/jira/7/7.6.13/.dockerignore | 3 - atlassian/jira/7/7.6.13/Dockerfile | 47 --- atlassian/jira/7/7.6.13/Makefile | 4 - atlassian/jira/7/7.6.13/README.md | 151 -------- atlassian/jira/7/7.6.13/entrypoint.sh | 89 ----- .../jira/7/7.6.14/.docker-repository.yml | 1 - atlassian/jira/7/7.6.14/.dockerignore | 3 - atlassian/jira/7/7.6.14/Dockerfile | 47 --- atlassian/jira/7/7.6.14/Makefile | 4 - atlassian/jira/7/7.6.14/README.md | 151 -------- atlassian/jira/7/7.6.14/entrypoint.sh | 89 ----- .../jira/7/7.6.15/.docker-repository.yml | 1 - atlassian/jira/7/7.6.15/.dockerignore | 3 - atlassian/jira/7/7.6.15/Dockerfile | 47 --- atlassian/jira/7/7.6.15/Makefile | 4 - atlassian/jira/7/7.6.15/README.md | 151 -------- atlassian/jira/7/7.6.15/entrypoint.sh | 89 ----- .../jira/7/7.6.16/.docker-repository.yml | 1 - atlassian/jira/7/7.6.16/.dockerignore | 3 - atlassian/jira/7/7.6.16/Dockerfile | 47 --- atlassian/jira/7/7.6.16/Makefile | 4 - atlassian/jira/7/7.6.16/README.md | 151 -------- atlassian/jira/7/7.6.16/entrypoint.sh | 89 ----- .../jira/7/7.6.17/.docker-repository.yml | 1 - atlassian/jira/7/7.6.17/.dockerignore | 3 - atlassian/jira/7/7.6.17/Dockerfile | 47 --- atlassian/jira/7/7.6.17/Makefile | 4 - atlassian/jira/7/7.6.17/README.md | 151 -------- atlassian/jira/7/7.6.17/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.2/.docker-repository.yml | 1 - atlassian/jira/7/7.6.2/.dockerignore | 3 - atlassian/jira/7/7.6.2/Dockerfile | 47 --- atlassian/jira/7/7.6.2/Makefile | 4 - atlassian/jira/7/7.6.2/README.md | 151 -------- atlassian/jira/7/7.6.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.3/.docker-repository.yml | 1 - atlassian/jira/7/7.6.3/.dockerignore | 3 - atlassian/jira/7/7.6.3/Dockerfile | 47 --- atlassian/jira/7/7.6.3/Makefile | 4 - atlassian/jira/7/7.6.3/README.md | 151 -------- atlassian/jira/7/7.6.3/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.4/.docker-repository.yml | 1 - atlassian/jira/7/7.6.4/.dockerignore | 3 - atlassian/jira/7/7.6.4/Dockerfile | 47 --- atlassian/jira/7/7.6.4/Makefile | 4 - atlassian/jira/7/7.6.4/README.md | 151 -------- atlassian/jira/7/7.6.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.6/.docker-repository.yml | 1 - atlassian/jira/7/7.6.6/.dockerignore | 3 - atlassian/jira/7/7.6.6/Dockerfile | 47 --- atlassian/jira/7/7.6.6/Makefile | 4 - atlassian/jira/7/7.6.6/README.md | 151 -------- atlassian/jira/7/7.6.6/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.7/.docker-repository.yml | 1 - atlassian/jira/7/7.6.7/.dockerignore | 3 - atlassian/jira/7/7.6.7/Dockerfile | 47 --- atlassian/jira/7/7.6.7/Makefile | 4 - atlassian/jira/7/7.6.7/README.md | 151 -------- atlassian/jira/7/7.6.7/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.8/.docker-repository.yml | 1 - atlassian/jira/7/7.6.8/.dockerignore | 3 - atlassian/jira/7/7.6.8/Dockerfile | 47 --- atlassian/jira/7/7.6.8/Makefile | 4 - atlassian/jira/7/7.6.8/README.md | 151 -------- atlassian/jira/7/7.6.8/entrypoint.sh | 89 ----- atlassian/jira/7/7.6.9/.docker-repository.yml | 1 - atlassian/jira/7/7.6.9/.dockerignore | 3 - atlassian/jira/7/7.6.9/Dockerfile | 47 --- atlassian/jira/7/7.6.9/Makefile | 4 - atlassian/jira/7/7.6.9/README.md | 151 -------- atlassian/jira/7/7.6.9/entrypoint.sh | 89 ----- atlassian/jira/7/7.7.0/.docker-repository.yml | 1 - atlassian/jira/7/7.7.0/.dockerignore | 3 - atlassian/jira/7/7.7.0/Dockerfile | 47 --- atlassian/jira/7/7.7.0/Makefile | 4 - atlassian/jira/7/7.7.0/README.md | 151 -------- atlassian/jira/7/7.7.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.7.1/.docker-repository.yml | 1 - atlassian/jira/7/7.7.1/.dockerignore | 3 - atlassian/jira/7/7.7.1/Dockerfile | 47 --- atlassian/jira/7/7.7.1/Makefile | 4 - atlassian/jira/7/7.7.1/README.md | 151 -------- atlassian/jira/7/7.7.1/entrypoint.sh | 89 ----- atlassian/jira/7/7.7.2/.docker-repository.yml | 1 - atlassian/jira/7/7.7.2/.dockerignore | 3 - atlassian/jira/7/7.7.2/Dockerfile | 47 --- atlassian/jira/7/7.7.2/Makefile | 4 - atlassian/jira/7/7.7.2/README.md | 151 -------- atlassian/jira/7/7.7.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.7.4/.docker-repository.yml | 1 - atlassian/jira/7/7.7.4/.dockerignore | 3 - atlassian/jira/7/7.7.4/Dockerfile | 47 --- atlassian/jira/7/7.7.4/Makefile | 4 - atlassian/jira/7/7.7.4/README.md | 151 -------- atlassian/jira/7/7.7.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.8.0/.docker-repository.yml | 1 - atlassian/jira/7/7.8.0/.dockerignore | 3 - atlassian/jira/7/7.8.0/Dockerfile | 47 --- atlassian/jira/7/7.8.0/Makefile | 4 - atlassian/jira/7/7.8.0/README.md | 151 -------- atlassian/jira/7/7.8.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.8.1/.docker-repository.yml | 1 - atlassian/jira/7/7.8.1/.dockerignore | 3 - atlassian/jira/7/7.8.1/Dockerfile | 47 --- atlassian/jira/7/7.8.1/Makefile | 4 - atlassian/jira/7/7.8.1/README.md | 151 -------- atlassian/jira/7/7.8.1/entrypoint.sh | 89 ----- atlassian/jira/7/7.8.2/.docker-repository.yml | 1 - atlassian/jira/7/7.8.2/.dockerignore | 3 - atlassian/jira/7/7.8.2/Dockerfile | 47 --- atlassian/jira/7/7.8.2/Makefile | 4 - atlassian/jira/7/7.8.2/README.md | 151 -------- atlassian/jira/7/7.8.2/entrypoint.sh | 89 ----- atlassian/jira/7/7.8.4/.docker-repository.yml | 1 - atlassian/jira/7/7.8.4/.dockerignore | 3 - atlassian/jira/7/7.8.4/Dockerfile | 47 --- atlassian/jira/7/7.8.4/Makefile | 4 - atlassian/jira/7/7.8.4/README.md | 151 -------- atlassian/jira/7/7.8.4/entrypoint.sh | 89 ----- atlassian/jira/7/7.9.0/.docker-repository.yml | 1 - atlassian/jira/7/7.9.0/.dockerignore | 3 - atlassian/jira/7/7.9.0/Dockerfile | 47 --- atlassian/jira/7/7.9.0/Makefile | 4 - atlassian/jira/7/7.9.0/README.md | 151 -------- atlassian/jira/7/7.9.0/entrypoint.sh | 89 ----- atlassian/jira/7/7.9.2/.docker-repository.yml | 1 - atlassian/jira/7/7.9.2/.dockerignore | 3 - atlassian/jira/7/7.9.2/Dockerfile | 47 --- atlassian/jira/7/7.9.2/Makefile | 4 - atlassian/jira/7/7.9.2/README.md | 151 -------- atlassian/jira/7/7.9.2/entrypoint.sh | 89 ----- 601 files changed, 29866 deletions(-) delete mode 100644 atlassian/jira/6/6.3.15/.docker-repository.yml delete mode 100644 atlassian/jira/6/6.3.15/.dockerignore delete mode 100644 atlassian/jira/6/6.3.15/Dockerfile delete mode 100644 atlassian/jira/6/6.3.15/Makefile delete mode 100644 atlassian/jira/6/6.3.15/README.md delete mode 100755 atlassian/jira/6/6.3.15/entrypoint.sh delete mode 100644 atlassian/jira/6/6.4.14/.docker-repository.yml delete mode 100644 atlassian/jira/6/6.4.14/.dockerignore delete mode 100644 atlassian/jira/6/6.4.14/Dockerfile delete mode 100644 atlassian/jira/6/6.4.14/Makefile delete mode 100644 atlassian/jira/6/6.4.14/README.md delete mode 100755 atlassian/jira/6/6.4.14/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.0/.dockerignore delete mode 100644 atlassian/jira/7/7.0.0/Dockerfile delete mode 100644 atlassian/jira/7/7.0.0/Makefile delete mode 100644 atlassian/jira/7/7.0.0/README.md delete mode 100755 atlassian/jira/7/7.0.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.10/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.10/.dockerignore delete mode 100644 atlassian/jira/7/7.0.10/Dockerfile delete mode 100644 atlassian/jira/7/7.0.10/Makefile delete mode 100644 atlassian/jira/7/7.0.10/README.md delete mode 100755 atlassian/jira/7/7.0.10/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.11/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.11/.dockerignore delete mode 100644 atlassian/jira/7/7.0.11/Dockerfile delete mode 100644 atlassian/jira/7/7.0.11/Makefile delete mode 100644 atlassian/jira/7/7.0.11/README.md delete mode 100755 atlassian/jira/7/7.0.11/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.2/.dockerignore delete mode 100644 atlassian/jira/7/7.0.2/Dockerfile delete mode 100644 atlassian/jira/7/7.0.2/Makefile delete mode 100644 atlassian/jira/7/7.0.2/README.md delete mode 100755 atlassian/jira/7/7.0.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.4/.dockerignore delete mode 100644 atlassian/jira/7/7.0.4/Dockerfile delete mode 100644 atlassian/jira/7/7.0.4/Makefile delete mode 100644 atlassian/jira/7/7.0.4/README.md delete mode 100755 atlassian/jira/7/7.0.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.0.5/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.0.5/.dockerignore delete mode 100644 atlassian/jira/7/7.0.5/Dockerfile delete mode 100644 atlassian/jira/7/7.0.5/Makefile delete mode 100644 atlassian/jira/7/7.0.5/README.md delete mode 100755 atlassian/jira/7/7.0.5/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.0/.dockerignore delete mode 100644 atlassian/jira/7/7.1.0/Dockerfile delete mode 100644 atlassian/jira/7/7.1.0/Makefile delete mode 100644 atlassian/jira/7/7.1.0/README.md delete mode 100755 atlassian/jira/7/7.1.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.1/.dockerignore delete mode 100644 atlassian/jira/7/7.1.1/Dockerfile delete mode 100644 atlassian/jira/7/7.1.1/Makefile delete mode 100644 atlassian/jira/7/7.1.1/README.md delete mode 100755 atlassian/jira/7/7.1.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.10/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.10/.dockerignore delete mode 100644 atlassian/jira/7/7.1.10/Dockerfile delete mode 100644 atlassian/jira/7/7.1.10/Makefile delete mode 100644 atlassian/jira/7/7.1.10/README.md delete mode 100755 atlassian/jira/7/7.1.10/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.2/.dockerignore delete mode 100644 atlassian/jira/7/7.1.2/Dockerfile delete mode 100644 atlassian/jira/7/7.1.2/Makefile delete mode 100644 atlassian/jira/7/7.1.2/README.md delete mode 100755 atlassian/jira/7/7.1.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.4/.dockerignore delete mode 100644 atlassian/jira/7/7.1.4/Dockerfile delete mode 100644 atlassian/jira/7/7.1.4/Makefile delete mode 100644 atlassian/jira/7/7.1.4/README.md delete mode 100755 atlassian/jira/7/7.1.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.6/.dockerignore delete mode 100644 atlassian/jira/7/7.1.6/Dockerfile delete mode 100644 atlassian/jira/7/7.1.6/Makefile delete mode 100644 atlassian/jira/7/7.1.6/README.md delete mode 100755 atlassian/jira/7/7.1.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.7/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.7/.dockerignore delete mode 100644 atlassian/jira/7/7.1.7/Dockerfile delete mode 100644 atlassian/jira/7/7.1.7/Makefile delete mode 100644 atlassian/jira/7/7.1.7/README.md delete mode 100755 atlassian/jira/7/7.1.7/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.8/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.8/.dockerignore delete mode 100644 atlassian/jira/7/7.1.8/Dockerfile delete mode 100644 atlassian/jira/7/7.1.8/Makefile delete mode 100644 atlassian/jira/7/7.1.8/README.md delete mode 100755 atlassian/jira/7/7.1.8/entrypoint.sh delete mode 100644 atlassian/jira/7/7.1.9/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.1.9/.dockerignore delete mode 100644 atlassian/jira/7/7.1.9/Dockerfile delete mode 100644 atlassian/jira/7/7.1.9/Makefile delete mode 100644 atlassian/jira/7/7.1.9/README.md delete mode 100755 atlassian/jira/7/7.1.9/entrypoint.sh delete mode 100644 atlassian/jira/7/7.10.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.10.0/.dockerignore delete mode 100644 atlassian/jira/7/7.10.0/Dockerfile delete mode 100644 atlassian/jira/7/7.10.0/Makefile delete mode 100644 atlassian/jira/7/7.10.0/README.md delete mode 100755 atlassian/jira/7/7.10.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.10.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.10.1/.dockerignore delete mode 100644 atlassian/jira/7/7.10.1/Dockerfile delete mode 100644 atlassian/jira/7/7.10.1/Makefile delete mode 100644 atlassian/jira/7/7.10.1/README.md delete mode 100755 atlassian/jira/7/7.10.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.10.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.10.2/.dockerignore delete mode 100644 atlassian/jira/7/7.10.2/Dockerfile delete mode 100644 atlassian/jira/7/7.10.2/Makefile delete mode 100644 atlassian/jira/7/7.10.2/README.md delete mode 100755 atlassian/jira/7/7.10.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.11.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.11.0/.dockerignore delete mode 100644 atlassian/jira/7/7.11.0/Dockerfile delete mode 100644 atlassian/jira/7/7.11.0/Makefile delete mode 100644 atlassian/jira/7/7.11.0/README.md delete mode 100755 atlassian/jira/7/7.11.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.11.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.11.1/.dockerignore delete mode 100644 atlassian/jira/7/7.11.1/Dockerfile delete mode 100644 atlassian/jira/7/7.11.1/Makefile delete mode 100644 atlassian/jira/7/7.11.1/README.md delete mode 100755 atlassian/jira/7/7.11.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.11.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.11.2/.dockerignore delete mode 100644 atlassian/jira/7/7.11.2/Dockerfile delete mode 100644 atlassian/jira/7/7.11.2/Makefile delete mode 100644 atlassian/jira/7/7.11.2/README.md delete mode 100755 atlassian/jira/7/7.11.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.12.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.12.0/.dockerignore delete mode 100644 atlassian/jira/7/7.12.0/Dockerfile delete mode 100644 atlassian/jira/7/7.12.0/Makefile delete mode 100644 atlassian/jira/7/7.12.0/README.md delete mode 100755 atlassian/jira/7/7.12.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.12.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.12.1/.dockerignore delete mode 100644 atlassian/jira/7/7.12.1/Dockerfile delete mode 100644 atlassian/jira/7/7.12.1/Makefile delete mode 100644 atlassian/jira/7/7.12.1/README.md delete mode 100755 atlassian/jira/7/7.12.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.12.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.12.3/.dockerignore delete mode 100644 atlassian/jira/7/7.12.3/Dockerfile delete mode 100644 atlassian/jira/7/7.12.3/Makefile delete mode 100644 atlassian/jira/7/7.12.3/README.md delete mode 100755 atlassian/jira/7/7.12.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.0/.dockerignore delete mode 100644 atlassian/jira/7/7.13.0/Dockerfile delete mode 100644 atlassian/jira/7/7.13.0/Makefile delete mode 100644 atlassian/jira/7/7.13.0/README.md delete mode 100755 atlassian/jira/7/7.13.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.1/.dockerignore delete mode 100644 atlassian/jira/7/7.13.1/Dockerfile delete mode 100644 atlassian/jira/7/7.13.1/Makefile delete mode 100644 atlassian/jira/7/7.13.1/README.md delete mode 100755 atlassian/jira/7/7.13.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.11/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.11/.dockerignore delete mode 100644 atlassian/jira/7/7.13.11/Dockerfile delete mode 100644 atlassian/jira/7/7.13.11/Makefile delete mode 100644 atlassian/jira/7/7.13.11/README.md delete mode 100755 atlassian/jira/7/7.13.11/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.2/.dockerignore delete mode 100644 atlassian/jira/7/7.13.2/Dockerfile delete mode 100644 atlassian/jira/7/7.13.2/Makefile delete mode 100644 atlassian/jira/7/7.13.2/README.md delete mode 100755 atlassian/jira/7/7.13.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.3/.dockerignore delete mode 100644 atlassian/jira/7/7.13.3/Dockerfile delete mode 100644 atlassian/jira/7/7.13.3/Makefile delete mode 100644 atlassian/jira/7/7.13.3/README.md delete mode 100755 atlassian/jira/7/7.13.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.4/.dockerignore delete mode 100644 atlassian/jira/7/7.13.4/Dockerfile delete mode 100644 atlassian/jira/7/7.13.4/Makefile delete mode 100644 atlassian/jira/7/7.13.4/README.md delete mode 100755 atlassian/jira/7/7.13.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.5/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.5/.dockerignore delete mode 100644 atlassian/jira/7/7.13.5/Dockerfile delete mode 100644 atlassian/jira/7/7.13.5/Makefile delete mode 100644 atlassian/jira/7/7.13.5/README.md delete mode 100755 atlassian/jira/7/7.13.5/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.6/.dockerignore delete mode 100644 atlassian/jira/7/7.13.6/Dockerfile delete mode 100644 atlassian/jira/7/7.13.6/Makefile delete mode 100644 atlassian/jira/7/7.13.6/README.md delete mode 100755 atlassian/jira/7/7.13.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.8/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.8/.dockerignore delete mode 100644 atlassian/jira/7/7.13.8/Dockerfile delete mode 100644 atlassian/jira/7/7.13.8/Makefile delete mode 100644 atlassian/jira/7/7.13.8/README.md delete mode 100755 atlassian/jira/7/7.13.8/entrypoint.sh delete mode 100644 atlassian/jira/7/7.13.9/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.13.9/.dockerignore delete mode 100644 atlassian/jira/7/7.13.9/Dockerfile delete mode 100644 atlassian/jira/7/7.13.9/Makefile delete mode 100644 atlassian/jira/7/7.13.9/README.md delete mode 100755 atlassian/jira/7/7.13.9/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.0/.dockerignore delete mode 100644 atlassian/jira/7/7.2.0/Dockerfile delete mode 100644 atlassian/jira/7/7.2.0/Makefile delete mode 100644 atlassian/jira/7/7.2.0/README.md delete mode 100755 atlassian/jira/7/7.2.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.1/.dockerignore delete mode 100644 atlassian/jira/7/7.2.1/Dockerfile delete mode 100644 atlassian/jira/7/7.2.1/Makefile delete mode 100644 atlassian/jira/7/7.2.1/README.md delete mode 100755 atlassian/jira/7/7.2.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.10/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.10/.dockerignore delete mode 100644 atlassian/jira/7/7.2.10/Dockerfile delete mode 100644 atlassian/jira/7/7.2.10/Makefile delete mode 100644 atlassian/jira/7/7.2.10/README.md delete mode 100755 atlassian/jira/7/7.2.10/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.11/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.11/.dockerignore delete mode 100644 atlassian/jira/7/7.2.11/Dockerfile delete mode 100644 atlassian/jira/7/7.2.11/Makefile delete mode 100644 atlassian/jira/7/7.2.11/README.md delete mode 100755 atlassian/jira/7/7.2.11/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.12/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.12/.dockerignore delete mode 100644 atlassian/jira/7/7.2.12/Dockerfile delete mode 100644 atlassian/jira/7/7.2.12/Makefile delete mode 100644 atlassian/jira/7/7.2.12/README.md delete mode 100755 atlassian/jira/7/7.2.12/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.13/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.13/.dockerignore delete mode 100644 atlassian/jira/7/7.2.13/Dockerfile delete mode 100644 atlassian/jira/7/7.2.13/Makefile delete mode 100644 atlassian/jira/7/7.2.13/README.md delete mode 100755 atlassian/jira/7/7.2.13/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.14/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.14/.dockerignore delete mode 100644 atlassian/jira/7/7.2.14/Dockerfile delete mode 100644 atlassian/jira/7/7.2.14/Makefile delete mode 100644 atlassian/jira/7/7.2.14/README.md delete mode 100755 atlassian/jira/7/7.2.14/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.15/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.15/.dockerignore delete mode 100644 atlassian/jira/7/7.2.15/Dockerfile delete mode 100644 atlassian/jira/7/7.2.15/Makefile delete mode 100644 atlassian/jira/7/7.2.15/README.md delete mode 100755 atlassian/jira/7/7.2.15/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.2/.dockerignore delete mode 100644 atlassian/jira/7/7.2.2/Dockerfile delete mode 100644 atlassian/jira/7/7.2.2/Makefile delete mode 100644 atlassian/jira/7/7.2.2/README.md delete mode 100755 atlassian/jira/7/7.2.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.3/.dockerignore delete mode 100644 atlassian/jira/7/7.2.3/Dockerfile delete mode 100644 atlassian/jira/7/7.2.3/Makefile delete mode 100644 atlassian/jira/7/7.2.3/README.md delete mode 100755 atlassian/jira/7/7.2.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.4/.dockerignore delete mode 100644 atlassian/jira/7/7.2.4/Dockerfile delete mode 100644 atlassian/jira/7/7.2.4/Makefile delete mode 100644 atlassian/jira/7/7.2.4/README.md delete mode 100755 atlassian/jira/7/7.2.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.6/.dockerignore delete mode 100644 atlassian/jira/7/7.2.6/Dockerfile delete mode 100644 atlassian/jira/7/7.2.6/Makefile delete mode 100644 atlassian/jira/7/7.2.6/README.md delete mode 100755 atlassian/jira/7/7.2.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.7/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.7/.dockerignore delete mode 100644 atlassian/jira/7/7.2.7/Dockerfile delete mode 100644 atlassian/jira/7/7.2.7/Makefile delete mode 100644 atlassian/jira/7/7.2.7/README.md delete mode 100755 atlassian/jira/7/7.2.7/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.8/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.8/.dockerignore delete mode 100644 atlassian/jira/7/7.2.8/Dockerfile delete mode 100644 atlassian/jira/7/7.2.8/Makefile delete mode 100644 atlassian/jira/7/7.2.8/README.md delete mode 100755 atlassian/jira/7/7.2.8/entrypoint.sh delete mode 100644 atlassian/jira/7/7.2.9/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.2.9/.dockerignore delete mode 100644 atlassian/jira/7/7.2.9/Dockerfile delete mode 100644 atlassian/jira/7/7.2.9/Makefile delete mode 100644 atlassian/jira/7/7.2.9/README.md delete mode 100755 atlassian/jira/7/7.2.9/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.0/.dockerignore delete mode 100644 atlassian/jira/7/7.3.0/Dockerfile delete mode 100644 atlassian/jira/7/7.3.0/Makefile delete mode 100644 atlassian/jira/7/7.3.0/README.md delete mode 100755 atlassian/jira/7/7.3.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.1/.dockerignore delete mode 100644 atlassian/jira/7/7.3.1/Dockerfile delete mode 100644 atlassian/jira/7/7.3.1/Makefile delete mode 100644 atlassian/jira/7/7.3.1/README.md delete mode 100755 atlassian/jira/7/7.3.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.2/.dockerignore delete mode 100644 atlassian/jira/7/7.3.2/Dockerfile delete mode 100644 atlassian/jira/7/7.3.2/Makefile delete mode 100644 atlassian/jira/7/7.3.2/README.md delete mode 100755 atlassian/jira/7/7.3.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.3/.dockerignore delete mode 100644 atlassian/jira/7/7.3.3/Dockerfile delete mode 100644 atlassian/jira/7/7.3.3/Makefile delete mode 100644 atlassian/jira/7/7.3.3/README.md delete mode 100755 atlassian/jira/7/7.3.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.4/.dockerignore delete mode 100644 atlassian/jira/7/7.3.4/Dockerfile delete mode 100644 atlassian/jira/7/7.3.4/Makefile delete mode 100644 atlassian/jira/7/7.3.4/README.md delete mode 100755 atlassian/jira/7/7.3.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.5/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.5/.dockerignore delete mode 100644 atlassian/jira/7/7.3.5/Dockerfile delete mode 100644 atlassian/jira/7/7.3.5/Makefile delete mode 100644 atlassian/jira/7/7.3.5/README.md delete mode 100755 atlassian/jira/7/7.3.5/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.6/.dockerignore delete mode 100644 atlassian/jira/7/7.3.6/Dockerfile delete mode 100644 atlassian/jira/7/7.3.6/Makefile delete mode 100644 atlassian/jira/7/7.3.6/README.md delete mode 100755 atlassian/jira/7/7.3.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.7/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.7/.dockerignore delete mode 100644 atlassian/jira/7/7.3.7/Dockerfile delete mode 100644 atlassian/jira/7/7.3.7/Makefile delete mode 100644 atlassian/jira/7/7.3.7/README.md delete mode 100755 atlassian/jira/7/7.3.7/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.8/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.8/.dockerignore delete mode 100644 atlassian/jira/7/7.3.8/Dockerfile delete mode 100644 atlassian/jira/7/7.3.8/Makefile delete mode 100644 atlassian/jira/7/7.3.8/README.md delete mode 100755 atlassian/jira/7/7.3.8/entrypoint.sh delete mode 100644 atlassian/jira/7/7.3.9/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.3.9/.dockerignore delete mode 100644 atlassian/jira/7/7.3.9/Dockerfile delete mode 100644 atlassian/jira/7/7.3.9/Makefile delete mode 100644 atlassian/jira/7/7.3.9/README.md delete mode 100755 atlassian/jira/7/7.3.9/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.0/.dockerignore delete mode 100644 atlassian/jira/7/7.4.0/Dockerfile delete mode 100644 atlassian/jira/7/7.4.0/Makefile delete mode 100644 atlassian/jira/7/7.4.0/README.md delete mode 100755 atlassian/jira/7/7.4.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.1/.dockerignore delete mode 100644 atlassian/jira/7/7.4.1/Dockerfile delete mode 100644 atlassian/jira/7/7.4.1/Makefile delete mode 100644 atlassian/jira/7/7.4.1/README.md delete mode 100755 atlassian/jira/7/7.4.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.2/.dockerignore delete mode 100644 atlassian/jira/7/7.4.2/Dockerfile delete mode 100644 atlassian/jira/7/7.4.2/Makefile delete mode 100644 atlassian/jira/7/7.4.2/README.md delete mode 100755 atlassian/jira/7/7.4.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.3/.dockerignore delete mode 100644 atlassian/jira/7/7.4.3/Dockerfile delete mode 100644 atlassian/jira/7/7.4.3/Makefile delete mode 100644 atlassian/jira/7/7.4.3/README.md delete mode 100755 atlassian/jira/7/7.4.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.4/.dockerignore delete mode 100644 atlassian/jira/7/7.4.4/Dockerfile delete mode 100644 atlassian/jira/7/7.4.4/Makefile delete mode 100644 atlassian/jira/7/7.4.4/README.md delete mode 100755 atlassian/jira/7/7.4.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.5/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.5/.dockerignore delete mode 100644 atlassian/jira/7/7.4.5/Dockerfile delete mode 100644 atlassian/jira/7/7.4.5/Makefile delete mode 100644 atlassian/jira/7/7.4.5/README.md delete mode 100755 atlassian/jira/7/7.4.5/entrypoint.sh delete mode 100644 atlassian/jira/7/7.4.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.4.6/.dockerignore delete mode 100644 atlassian/jira/7/7.4.6/Dockerfile delete mode 100644 atlassian/jira/7/7.4.6/Makefile delete mode 100644 atlassian/jira/7/7.4.6/README.md delete mode 100755 atlassian/jira/7/7.4.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.5.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.5.0/.dockerignore delete mode 100644 atlassian/jira/7/7.5.0/Dockerfile delete mode 100644 atlassian/jira/7/7.5.0/Makefile delete mode 100644 atlassian/jira/7/7.5.0/README.md delete mode 100755 atlassian/jira/7/7.5.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.5.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.5.1/.dockerignore delete mode 100644 atlassian/jira/7/7.5.1/Dockerfile delete mode 100644 atlassian/jira/7/7.5.1/Makefile delete mode 100644 atlassian/jira/7/7.5.1/README.md delete mode 100755 atlassian/jira/7/7.5.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.5.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.5.2/.dockerignore delete mode 100644 atlassian/jira/7/7.5.2/Dockerfile delete mode 100644 atlassian/jira/7/7.5.2/Makefile delete mode 100644 atlassian/jira/7/7.5.2/README.md delete mode 100755 atlassian/jira/7/7.5.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.5.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.5.3/.dockerignore delete mode 100644 atlassian/jira/7/7.5.3/Dockerfile delete mode 100644 atlassian/jira/7/7.5.3/Makefile delete mode 100644 atlassian/jira/7/7.5.3/README.md delete mode 100755 atlassian/jira/7/7.5.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.5.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.5.4/.dockerignore delete mode 100644 atlassian/jira/7/7.5.4/Dockerfile delete mode 100644 atlassian/jira/7/7.5.4/Makefile delete mode 100644 atlassian/jira/7/7.5.4/README.md delete mode 100755 atlassian/jira/7/7.5.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.0/.dockerignore delete mode 100644 atlassian/jira/7/7.6.0/Dockerfile delete mode 100644 atlassian/jira/7/7.6.0/Makefile delete mode 100644 atlassian/jira/7/7.6.0/README.md delete mode 100755 atlassian/jira/7/7.6.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.1/.dockerignore delete mode 100644 atlassian/jira/7/7.6.1/Dockerfile delete mode 100644 atlassian/jira/7/7.6.1/Makefile delete mode 100644 atlassian/jira/7/7.6.1/README.md delete mode 100755 atlassian/jira/7/7.6.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.10/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.10/.dockerignore delete mode 100644 atlassian/jira/7/7.6.10/Dockerfile delete mode 100644 atlassian/jira/7/7.6.10/Makefile delete mode 100644 atlassian/jira/7/7.6.10/README.md delete mode 100755 atlassian/jira/7/7.6.10/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.11/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.11/.dockerignore delete mode 100644 atlassian/jira/7/7.6.11/Dockerfile delete mode 100644 atlassian/jira/7/7.6.11/Makefile delete mode 100644 atlassian/jira/7/7.6.11/README.md delete mode 100755 atlassian/jira/7/7.6.11/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.12/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.12/.dockerignore delete mode 100644 atlassian/jira/7/7.6.12/Dockerfile delete mode 100644 atlassian/jira/7/7.6.12/Makefile delete mode 100644 atlassian/jira/7/7.6.12/README.md delete mode 100755 atlassian/jira/7/7.6.12/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.13/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.13/.dockerignore delete mode 100644 atlassian/jira/7/7.6.13/Dockerfile delete mode 100644 atlassian/jira/7/7.6.13/Makefile delete mode 100644 atlassian/jira/7/7.6.13/README.md delete mode 100755 atlassian/jira/7/7.6.13/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.14/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.14/.dockerignore delete mode 100644 atlassian/jira/7/7.6.14/Dockerfile delete mode 100644 atlassian/jira/7/7.6.14/Makefile delete mode 100644 atlassian/jira/7/7.6.14/README.md delete mode 100755 atlassian/jira/7/7.6.14/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.15/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.15/.dockerignore delete mode 100644 atlassian/jira/7/7.6.15/Dockerfile delete mode 100644 atlassian/jira/7/7.6.15/Makefile delete mode 100644 atlassian/jira/7/7.6.15/README.md delete mode 100755 atlassian/jira/7/7.6.15/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.16/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.16/.dockerignore delete mode 100644 atlassian/jira/7/7.6.16/Dockerfile delete mode 100644 atlassian/jira/7/7.6.16/Makefile delete mode 100644 atlassian/jira/7/7.6.16/README.md delete mode 100755 atlassian/jira/7/7.6.16/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.17/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.17/.dockerignore delete mode 100644 atlassian/jira/7/7.6.17/Dockerfile delete mode 100644 atlassian/jira/7/7.6.17/Makefile delete mode 100644 atlassian/jira/7/7.6.17/README.md delete mode 100755 atlassian/jira/7/7.6.17/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.2/.dockerignore delete mode 100644 atlassian/jira/7/7.6.2/Dockerfile delete mode 100644 atlassian/jira/7/7.6.2/Makefile delete mode 100644 atlassian/jira/7/7.6.2/README.md delete mode 100755 atlassian/jira/7/7.6.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.3/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.3/.dockerignore delete mode 100644 atlassian/jira/7/7.6.3/Dockerfile delete mode 100644 atlassian/jira/7/7.6.3/Makefile delete mode 100644 atlassian/jira/7/7.6.3/README.md delete mode 100755 atlassian/jira/7/7.6.3/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.4/.dockerignore delete mode 100644 atlassian/jira/7/7.6.4/Dockerfile delete mode 100644 atlassian/jira/7/7.6.4/Makefile delete mode 100644 atlassian/jira/7/7.6.4/README.md delete mode 100755 atlassian/jira/7/7.6.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.6/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.6/.dockerignore delete mode 100644 atlassian/jira/7/7.6.6/Dockerfile delete mode 100644 atlassian/jira/7/7.6.6/Makefile delete mode 100644 atlassian/jira/7/7.6.6/README.md delete mode 100755 atlassian/jira/7/7.6.6/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.7/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.7/.dockerignore delete mode 100644 atlassian/jira/7/7.6.7/Dockerfile delete mode 100644 atlassian/jira/7/7.6.7/Makefile delete mode 100644 atlassian/jira/7/7.6.7/README.md delete mode 100755 atlassian/jira/7/7.6.7/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.8/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.8/.dockerignore delete mode 100644 atlassian/jira/7/7.6.8/Dockerfile delete mode 100644 atlassian/jira/7/7.6.8/Makefile delete mode 100644 atlassian/jira/7/7.6.8/README.md delete mode 100755 atlassian/jira/7/7.6.8/entrypoint.sh delete mode 100644 atlassian/jira/7/7.6.9/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.6.9/.dockerignore delete mode 100644 atlassian/jira/7/7.6.9/Dockerfile delete mode 100644 atlassian/jira/7/7.6.9/Makefile delete mode 100644 atlassian/jira/7/7.6.9/README.md delete mode 100755 atlassian/jira/7/7.6.9/entrypoint.sh delete mode 100644 atlassian/jira/7/7.7.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.7.0/.dockerignore delete mode 100644 atlassian/jira/7/7.7.0/Dockerfile delete mode 100644 atlassian/jira/7/7.7.0/Makefile delete mode 100644 atlassian/jira/7/7.7.0/README.md delete mode 100755 atlassian/jira/7/7.7.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.7.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.7.1/.dockerignore delete mode 100644 atlassian/jira/7/7.7.1/Dockerfile delete mode 100644 atlassian/jira/7/7.7.1/Makefile delete mode 100644 atlassian/jira/7/7.7.1/README.md delete mode 100755 atlassian/jira/7/7.7.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.7.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.7.2/.dockerignore delete mode 100644 atlassian/jira/7/7.7.2/Dockerfile delete mode 100644 atlassian/jira/7/7.7.2/Makefile delete mode 100644 atlassian/jira/7/7.7.2/README.md delete mode 100755 atlassian/jira/7/7.7.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.7.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.7.4/.dockerignore delete mode 100644 atlassian/jira/7/7.7.4/Dockerfile delete mode 100644 atlassian/jira/7/7.7.4/Makefile delete mode 100644 atlassian/jira/7/7.7.4/README.md delete mode 100755 atlassian/jira/7/7.7.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.8.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.8.0/.dockerignore delete mode 100644 atlassian/jira/7/7.8.0/Dockerfile delete mode 100644 atlassian/jira/7/7.8.0/Makefile delete mode 100644 atlassian/jira/7/7.8.0/README.md delete mode 100755 atlassian/jira/7/7.8.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.8.1/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.8.1/.dockerignore delete mode 100644 atlassian/jira/7/7.8.1/Dockerfile delete mode 100644 atlassian/jira/7/7.8.1/Makefile delete mode 100644 atlassian/jira/7/7.8.1/README.md delete mode 100755 atlassian/jira/7/7.8.1/entrypoint.sh delete mode 100644 atlassian/jira/7/7.8.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.8.2/.dockerignore delete mode 100644 atlassian/jira/7/7.8.2/Dockerfile delete mode 100644 atlassian/jira/7/7.8.2/Makefile delete mode 100644 atlassian/jira/7/7.8.2/README.md delete mode 100755 atlassian/jira/7/7.8.2/entrypoint.sh delete mode 100644 atlassian/jira/7/7.8.4/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.8.4/.dockerignore delete mode 100644 atlassian/jira/7/7.8.4/Dockerfile delete mode 100644 atlassian/jira/7/7.8.4/Makefile delete mode 100644 atlassian/jira/7/7.8.4/README.md delete mode 100755 atlassian/jira/7/7.8.4/entrypoint.sh delete mode 100644 atlassian/jira/7/7.9.0/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.9.0/.dockerignore delete mode 100644 atlassian/jira/7/7.9.0/Dockerfile delete mode 100644 atlassian/jira/7/7.9.0/Makefile delete mode 100644 atlassian/jira/7/7.9.0/README.md delete mode 100755 atlassian/jira/7/7.9.0/entrypoint.sh delete mode 100644 atlassian/jira/7/7.9.2/.docker-repository.yml delete mode 100644 atlassian/jira/7/7.9.2/.dockerignore delete mode 100644 atlassian/jira/7/7.9.2/Dockerfile delete mode 100644 atlassian/jira/7/7.9.2/Makefile delete mode 100644 atlassian/jira/7/7.9.2/README.md delete mode 100755 atlassian/jira/7/7.9.2/entrypoint.sh diff --git a/.travis.yml b/.travis.yml index e37afc124..364dead56 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1008,372 +1008,6 @@ matrix: - docker build --compress -t epicmorg/confluence:7.2.1-jdk11 -f atlassian/confluence/7.2.1/Dockerfile.jdk11 atlassian/confluence/7.2.1 - docker push epicmorg/confluence:7.2.1-jdk11 -######################################### -#### Our Jira images -######################################### - - name: Jira 7.0.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.0.0 atlassian/jira/7.0.0 - - docker push epicmorg/jira:7.0.0 - - - docker build --compress -t epicmorg/jira:7.0.2 atlassian/jira/7.0.2 - - docker push epicmorg/jira:7.0.2 - - - docker build --compress -t epicmorg/jira:7.0.4 atlassian/jira/7.0.4 - - docker push epicmorg/jira:7.0.4 - - - docker build --compress -t epicmorg/jira:7.0.5 atlassian/jira/7.0.5 - - docker push epicmorg/jira:7.0.5 - - - docker build --compress -t epicmorg/jira:7.0.10 atlassian/jira/7.0.10 - - docker push epicmorg/jira:7.0.10 - - - docker build --compress -t epicmorg/jira:7.0.11 atlassian/jira/7.0.11 - - docker push epicmorg/jira:7.0.11 - -########## - - - name: Jira 7.1.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.1.0 atlassian/jira/7.1.0 - - docker push epicmorg/jira:7.1.0 - - - docker build --compress -t epicmorg/jira:7.1.1 atlassian/jira/7.1.1 - - docker push epicmorg/jira:7.1.1 - - - docker build --compress -t epicmorg/jira:7.1.2 atlassian/jira/7.1.2 - - docker push epicmorg/jira:7.1.2 - - - docker build --compress -t epicmorg/jira:7.1.4 atlassian/jira/7.1.4 - - docker push epicmorg/jira:7.1.4 - - - docker build --compress -t epicmorg/jira:7.1.6 atlassian/jira/7.1.6 - - docker push epicmorg/jira:7.1.6 - - - docker build --compress -t epicmorg/jira:7.1.7 atlassian/jira/7.1.7 - - docker push epicmorg/jira:7.1.7 - - - docker build --compress -t epicmorg/jira:7.1.8 atlassian/jira/7.1.8 - - docker push epicmorg/jira:7.1.8 - - - docker build --compress -t epicmorg/jira:7.1.9 atlassian/jira/7.1.9 - - docker push epicmorg/jira:7.1.9 - - - docker build --compress -t epicmorg/jira:7.1.10 atlassian/jira/7.1.10 - - docker push epicmorg/jira:7.1.10 - -########## - - - name: Jira 7.2.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.2.0 atlassian/jira/7.2.0 - - docker push epicmorg/jira:7.2.0 - - - docker build --compress -t epicmorg/jira:7.2.1 atlassian/jira/7.2.1 - - docker push epicmorg/jira:7.2.1 - - - docker build --compress -t epicmorg/jira:7.2.2 atlassian/jira/7.2.2 - - docker push epicmorg/jira:7.2.2 - - - docker build --compress -t epicmorg/jira:7.2.3 atlassian/jira/7.2.3 - - docker push epicmorg/jira:7.2.3 - - - docker build --compress -t epicmorg/jira:7.2.4 atlassian/jira/7.2.4 - - docker push epicmorg/jira:7.2.4 - - - docker build --compress -t epicmorg/jira:7.2.6 atlassian/jira/7.2.6 - - docker push epicmorg/jira:7.2.6 - - - docker build --compress -t epicmorg/jira:7.2.7 atlassian/jira/7.2.7 - - docker push epicmorg/jira:7.2.7 - - - docker build --compress -t epicmorg/jira:7.2.8 atlassian/jira/7.2.8 - - docker push epicmorg/jira:7.2.8 - - - docker build --compress -t epicmorg/jira:7.2.9 atlassian/jira/7.2.9 - - docker push epicmorg/jira:7.2.9 - - - docker build --compress -t epicmorg/jira:7.2.10 atlassian/jira/7.2.10 - - docker push epicmorg/jira:7.2.10 - - - docker build --compress -t epicmorg/jira:7.2.11 atlassian/jira/7.2.11 - - docker push epicmorg/jira:7.2.11 - - - docker build --compress -t epicmorg/jira:7.2.12 atlassian/jira/7.2.12 - - docker push epicmorg/jira:7.2.12 - - - docker build --compress -t epicmorg/jira:7.2.13 atlassian/jira/7.2.13 - - docker push epicmorg/jira:7.2.13 - - - docker build --compress -t epicmorg/jira:7.2.14 atlassian/jira/7.2.14 - - docker push epicmorg/jira:7.2.14 - - - docker build --compress -t epicmorg/jira:7.2.15 atlassian/jira/7.2.15 - - docker push epicmorg/jira:7.2.15 - -########## - - - name: Jira 7.3.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.3.0 atlassian/jira/7.3.0 - - docker push epicmorg/jira:7.3.0 - - - docker build --compress -t epicmorg/jira:7.3.1 atlassian/jira/7.3.1 - - docker push epicmorg/jira:7.3.1 - - - docker build --compress -t epicmorg/jira:7.3.2 atlassian/jira/7.3.2 - - docker push epicmorg/jira:7.3.2 - - - docker build --compress -t epicmorg/jira:7.3.3 atlassian/jira/7.3.3 - - docker push epicmorg/jira:7.3.3 - - - docker build --compress -t epicmorg/jira:7.3.4 atlassian/jira/7.3.4 - - docker push epicmorg/jira:7.3.4 - - - docker build --compress -t epicmorg/jira:7.3.5 atlassian/jira/7.3.5 - - docker push epicmorg/jira:7.3.5 - - - docker build --compress -t epicmorg/jira:7.3.6 atlassian/jira/7.3.6 - - docker push epicmorg/jira:7.3.6 - - - docker build --compress -t epicmorg/jira:7.3.7 atlassian/jira/7.3.7 - - docker push epicmorg/jira:7.3.7 - - - docker build --compress -t epicmorg/jira:7.3.8 atlassian/jira/7.3.8 - - docker push epicmorg/jira:7.3.8 - - - docker build --compress -t epicmorg/jira:7.3.9 atlassian/jira/7.3.9 - - docker push epicmorg/jira:7.3.9 - -########## - - - name: Jira 7.4.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.4.0 atlassian/jira/7.4.0 - - docker push epicmorg/jira:7.4.0 - - - docker build --compress -t epicmorg/jira:7.4.1 atlassian/jira/7.4.1 - - docker push epicmorg/jira:7.4.1 - - - docker build --compress -t epicmorg/jira:7.4.2 atlassian/jira/7.4.2 - - docker push epicmorg/jira:7.4.2 - - - docker build --compress -t epicmorg/jira:7.4.3 atlassian/jira/7.4.3 - - docker push epicmorg/jira:7.4.3 - - - docker build --compress -t epicmorg/jira:7.4.4 atlassian/jira/7.4.4 - - docker push epicmorg/jira:7.4.4 - - - docker build --compress -t epicmorg/jira:7.4.5 atlassian/jira/7.4.5 - - docker push epicmorg/jira:7.4.5 - - - docker build --compress -t epicmorg/jira:7.4.6 atlassian/jira/7.4.6 - - docker push epicmorg/jira:7.4.6 - -########## - - - name: Jira 7.5.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.5.0 atlassian/jira/7.5.0 - - docker push epicmorg/jira:7.5.0 - - - docker build --compress -t epicmorg/jira:7.5.1 atlassian/jira/7.5.1 - - docker push epicmorg/jira:7.5.1 - - - docker build --compress -t epicmorg/jira:7.5.2 atlassian/jira/7.5.2 - - docker push epicmorg/jira:7.5.2 - - - docker build --compress -t epicmorg/jira:7.5.3 atlassian/jira/7.5.3 - - docker push epicmorg/jira:7.5.3 - - - docker build --compress -t epicmorg/jira:7.5.4 atlassian/jira/7.5.4 - - docker push epicmorg/jira:7.5.4 - -########## - - - name: Jira 7.6.x LTS - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.6.0 atlassian/jira/7.6.0 - - docker push epicmorg/jira:7.6.0 - - - docker build --compress -t epicmorg/jira:7.6.1 atlassian/jira/7.6.1 - - docker push epicmorg/jira:7.6.1 - - - docker build --compress -t epicmorg/jira:7.6.2 atlassian/jira/7.6.2 - - docker push epicmorg/jira:7.6.2 - - - docker build --compress -t epicmorg/jira:7.6.3 atlassian/jira/7.6.3 - - docker push epicmorg/jira:7.6.3 - - - docker build --compress -t epicmorg/jira:7.6.4 atlassian/jira/7.6.4 - - docker push epicmorg/jira:7.6.4 - - - docker build --compress -t epicmorg/jira:7.6.6 atlassian/jira/7.6.6 - - docker push epicmorg/jira:7.6.6 - - - docker build --compress -t epicmorg/jira:7.6.7 atlassian/jira/7.6.7 - - docker push epicmorg/jira:7.6.7 - - - docker build --compress -t epicmorg/jira:7.6.8 atlassian/jira/7.6.8 - - docker push epicmorg/jira:7.6.8 - - - docker build --compress -t epicmorg/jira:7.6.9 atlassian/jira/7.6.9 - - docker push epicmorg/jira:7.6.9 - - - docker build --compress -t epicmorg/jira:7.6.10 atlassian/jira/7.6.10 - - docker push epicmorg/jira:7.6.10 - - - docker build --compress -t epicmorg/jira:7.6.11 atlassian/jira/7.6.11 - - docker push epicmorg/jira:7.6.11 - - - docker build --compress -t epicmorg/jira:7.6.12 atlassian/jira/7.6.12 - - docker push epicmorg/jira:7.6.12 - - - docker build --compress -t epicmorg/jira:7.6.13 atlassian/jira/7.6.13 - - docker push epicmorg/jira:7.6.13 - - - docker build --compress -t epicmorg/jira:7.6.14 atlassian/jira/7.6.14 - - docker push epicmorg/jira:7.6.14 - - - docker build --compress -t epicmorg/jira:7.6.15 atlassian/jira/7.6.15 - - docker push epicmorg/jira:7.6.15 - - - docker build --compress -t epicmorg/jira:7.6.16 atlassian/jira/7.6.16 - - docker push epicmorg/jira:7.6.16 - - - docker build --compress -t epicmorg/jira:7.6.17 atlassian/jira/7.6.17 - - docker push epicmorg/jira:7.6.17 - -########## - - - name: Jira 7.7.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.7.0 atlassian/jira/7.7.0 - - docker push epicmorg/jira:7.7.0 - - - docker build --compress -t epicmorg/jira:7.7.1 atlassian/jira/7.7.1 - - docker push epicmorg/jira:7.7.1 - - - docker build --compress -t epicmorg/jira:7.7.2 atlassian/jira/7.7.2 - - docker push epicmorg/jira:7.7.2 - - - docker build --compress -t epicmorg/jira:7.7.4 atlassian/jira/7.7.4 - - docker push epicmorg/jira:7.7.4 - -########## - - - name: Jira 7.8.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.8.0 atlassian/jira/7.8.0 - - docker push epicmorg/jira:7.8.0 - - - docker build --compress -t epicmorg/jira:7.8.1 atlassian/jira/7.8.1 - - docker push epicmorg/jira:7.8.1 - - - docker build --compress -t epicmorg/jira:7.8.2 atlassian/jira/7.8.2 - - docker push epicmorg/jira:7.8.2 - - - docker build --compress -t epicmorg/jira:7.8.4 atlassian/jira/7.8.4 - - docker push epicmorg/jira:7.8.4 - -########## - - - name: Jira 7.9.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.9.0 atlassian/jira/7.9.0 - - docker push epicmorg/jira:7.9.0 - - - docker build --compress -t epicmorg/jira:7.9.2 atlassian/jira/7.9.2 - - docker push epicmorg/jira:7.9.2 - -########## - - - name: Jira 7.10.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.10.0 atlassian/jira/7.10.0 - - docker push epicmorg/jira:7.10.0 - - - docker build --compress -t epicmorg/jira:7.10.1 atlassian/jira/7.10.1 - - docker push epicmorg/jira:7.10.1 - - - docker build --compress -t epicmorg/jira:7.10.2 atlassian/jira/7.10.2 - - docker push epicmorg/jira:7.10.2 - -########## - - - name: Jira 7.11.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.11.0 atlassian/jira/7.11.0 - - docker push epicmorg/jira:7.11.0 - - - docker build --compress -t epicmorg/jira:7.11.1 atlassian/jira/7.11.1 - - docker push epicmorg/jira:7.11.1 - - - docker build --compress -t epicmorg/jira:7.11.2 atlassian/jira/7.11.2 - - docker push epicmorg/jira:7.11.2 - -########## - - - name: Jira 7.12.x - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.12.0 atlassian/jira/7.12.0 - - docker push epicmorg/jira:7.12.0 - - - docker build --compress -t epicmorg/jira:7.12.1 atlassian/jira/7.12.1 - - docker push epicmorg/jira:7.12.1 - - - docker build --compress -t epicmorg/jira:7.12.3 atlassian/jira/7.12.3 - - docker push epicmorg/jira:7.12.3 - -########## - - - name: Jira 7.13.x LTS - script: - - echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin - - docker build --compress -t epicmorg/jira:7.13.0 atlassian/jira/7.13.0 - - docker push epicmorg/jira:7.13.0 - - - docker build --compress -t epicmorg/jira:7.13.1 atlassian/jira/7.13.1 - - docker push epicmorg/jira:7.13.1 - - - docker build --compress -t epicmorg/jira:7.13.2 atlassian/jira/7.13.2 - - docker push epicmorg/jira:7.13.2 - - - docker build --compress -t epicmorg/jira:7.13.3 atlassian/jira/7.13.3 - - docker push epicmorg/jira:7.13.3 - - - docker build --compress -t epicmorg/jira:7.13.4 atlassian/jira/7.13.4 - - docker push epicmorg/jira:7.13.4 - - - docker build --compress -t epicmorg/jira:7.13.5 atlassian/jira/7.13.5 - - docker push epicmorg/jira:7.13.5 - - - docker build --compress -t epicmorg/jira:7.13.6 atlassian/jira/7.13.6 - - docker push epicmorg/jira:7.13.6 - - - docker build --compress -t epicmorg/jira:7.13.8 atlassian/jira/7.13.8 - - docker push epicmorg/jira:7.13.8 - - - docker build --compress -t epicmorg/jira:7.13.9 atlassian/jira/7.13.9 - - docker push epicmorg/jira:7.13.9 - - - docker build --compress -t epicmorg/jira:7.13.11 atlassian/jira/7.13.11 - - docker push epicmorg/jira:7.13.11 - - ######################################### #### Our minor priority images diff --git a/atlassian/jira/6/6.3.15/.docker-repository.yml b/atlassian/jira/6/6.3.15/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/6/6.3.15/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/6/6.3.15/.dockerignore b/atlassian/jira/6/6.3.15/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/6/6.3.15/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/6/6.3.15/Dockerfile b/atlassian/jira/6/6.3.15/Dockerfile deleted file mode 100644 index 5b34ba500..000000000 --- a/atlassian/jira/6/6.3.15/Dockerfile +++ /dev/null @@ -1,46 +0,0 @@ -FROM epicmorg/prod:jdk7 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=6.3.15 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/6/6.3.15/Makefile b/atlassian/jira/6/6.3.15/Makefile deleted file mode 100644 index 1600cdd9c..000000000 --- a/atlassian/jira/6/6.3.15/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:6.3.15 . - docker push epicmorg/jira:6.3.15 diff --git a/atlassian/jira/6/6.3.15/README.md b/atlassian/jira/6/6.3.15/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/6/6.3.15/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/6/6.3.15/entrypoint.sh b/atlassian/jira/6/6.3.15/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/6/6.3.15/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/6/6.4.14/.docker-repository.yml b/atlassian/jira/6/6.4.14/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/6/6.4.14/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/6/6.4.14/.dockerignore b/atlassian/jira/6/6.4.14/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/6/6.4.14/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/6/6.4.14/Dockerfile b/atlassian/jira/6/6.4.14/Dockerfile deleted file mode 100644 index ccea5ede7..000000000 --- a/atlassian/jira/6/6.4.14/Dockerfile +++ /dev/null @@ -1,46 +0,0 @@ -FROM epicmorg/prod:jdk7 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=6.4.14 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/6/6.4.14/Makefile b/atlassian/jira/6/6.4.14/Makefile deleted file mode 100644 index 8f1d19b9d..000000000 --- a/atlassian/jira/6/6.4.14/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:6.4.14 . - docker push epicmorg/jira:6.4.14 diff --git a/atlassian/jira/6/6.4.14/README.md b/atlassian/jira/6/6.4.14/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/6/6.4.14/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/6/6.4.14/entrypoint.sh b/atlassian/jira/6/6.4.14/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/6/6.4.14/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.0/.docker-repository.yml b/atlassian/jira/7/7.0.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.0/.dockerignore b/atlassian/jira/7/7.0.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.0/Dockerfile b/atlassian/jira/7/7.0.0/Dockerfile deleted file mode 100644 index ca8f4b68e..000000000 --- a/atlassian/jira/7/7.0.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.0/Makefile b/atlassian/jira/7/7.0.0/Makefile deleted file mode 100644 index be763d410..000000000 --- a/atlassian/jira/7/7.0.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.0 . diff --git a/atlassian/jira/7/7.0.0/README.md b/atlassian/jira/7/7.0.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.0/entrypoint.sh b/atlassian/jira/7/7.0.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.10/.docker-repository.yml b/atlassian/jira/7/7.0.10/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.10/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.10/.dockerignore b/atlassian/jira/7/7.0.10/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.10/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.10/Dockerfile b/atlassian/jira/7/7.0.10/Dockerfile deleted file mode 100644 index b9c7daa0c..000000000 --- a/atlassian/jira/7/7.0.10/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.10 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.10/Makefile b/atlassian/jira/7/7.0.10/Makefile deleted file mode 100644 index 0e9be2360..000000000 --- a/atlassian/jira/7/7.0.10/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.10 . diff --git a/atlassian/jira/7/7.0.10/README.md b/atlassian/jira/7/7.0.10/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.10/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.10/entrypoint.sh b/atlassian/jira/7/7.0.10/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.10/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.11/.docker-repository.yml b/atlassian/jira/7/7.0.11/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.11/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.11/.dockerignore b/atlassian/jira/7/7.0.11/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.11/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.11/Dockerfile b/atlassian/jira/7/7.0.11/Dockerfile deleted file mode 100644 index 25fa7b74c..000000000 --- a/atlassian/jira/7/7.0.11/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.11 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.11/Makefile b/atlassian/jira/7/7.0.11/Makefile deleted file mode 100644 index e078161b8..000000000 --- a/atlassian/jira/7/7.0.11/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.11 . diff --git a/atlassian/jira/7/7.0.11/README.md b/atlassian/jira/7/7.0.11/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.11/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.11/entrypoint.sh b/atlassian/jira/7/7.0.11/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.11/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.2/.docker-repository.yml b/atlassian/jira/7/7.0.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.2/.dockerignore b/atlassian/jira/7/7.0.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.2/Dockerfile b/atlassian/jira/7/7.0.2/Dockerfile deleted file mode 100644 index e26bbba41..000000000 --- a/atlassian/jira/7/7.0.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.2/Makefile b/atlassian/jira/7/7.0.2/Makefile deleted file mode 100644 index 257105852..000000000 --- a/atlassian/jira/7/7.0.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.2 . diff --git a/atlassian/jira/7/7.0.2/README.md b/atlassian/jira/7/7.0.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.2/entrypoint.sh b/atlassian/jira/7/7.0.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.4/.docker-repository.yml b/atlassian/jira/7/7.0.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.4/.dockerignore b/atlassian/jira/7/7.0.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.4/Dockerfile b/atlassian/jira/7/7.0.4/Dockerfile deleted file mode 100644 index 92f8d5eb7..000000000 --- a/atlassian/jira/7/7.0.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.4/Makefile b/atlassian/jira/7/7.0.4/Makefile deleted file mode 100644 index a03580e31..000000000 --- a/atlassian/jira/7/7.0.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.4 . diff --git a/atlassian/jira/7/7.0.4/README.md b/atlassian/jira/7/7.0.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.4/entrypoint.sh b/atlassian/jira/7/7.0.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.0.5/.docker-repository.yml b/atlassian/jira/7/7.0.5/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.0.5/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.0.5/.dockerignore b/atlassian/jira/7/7.0.5/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.0.5/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.0.5/Dockerfile b/atlassian/jira/7/7.0.5/Dockerfile deleted file mode 100644 index f4867fcc8..000000000 --- a/atlassian/jira/7/7.0.5/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.0.5 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.0.5/Makefile b/atlassian/jira/7/7.0.5/Makefile deleted file mode 100644 index cbb7cb153..000000000 --- a/atlassian/jira/7/7.0.5/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.0.5 . diff --git a/atlassian/jira/7/7.0.5/README.md b/atlassian/jira/7/7.0.5/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.0.5/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.0.5/entrypoint.sh b/atlassian/jira/7/7.0.5/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.0.5/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.0/.docker-repository.yml b/atlassian/jira/7/7.1.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.0/.dockerignore b/atlassian/jira/7/7.1.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.0/Dockerfile b/atlassian/jira/7/7.1.0/Dockerfile deleted file mode 100644 index 5190a5edf..000000000 --- a/atlassian/jira/7/7.1.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.0/Makefile b/atlassian/jira/7/7.1.0/Makefile deleted file mode 100644 index 1c6bc6751..000000000 --- a/atlassian/jira/7/7.1.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.0 . diff --git a/atlassian/jira/7/7.1.0/README.md b/atlassian/jira/7/7.1.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.0/entrypoint.sh b/atlassian/jira/7/7.1.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.1/.docker-repository.yml b/atlassian/jira/7/7.1.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.1/.dockerignore b/atlassian/jira/7/7.1.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.1/Dockerfile b/atlassian/jira/7/7.1.1/Dockerfile deleted file mode 100644 index 528898b27..000000000 --- a/atlassian/jira/7/7.1.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.1/Makefile b/atlassian/jira/7/7.1.1/Makefile deleted file mode 100644 index 2bcd8ce3b..000000000 --- a/atlassian/jira/7/7.1.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.1 . diff --git a/atlassian/jira/7/7.1.1/README.md b/atlassian/jira/7/7.1.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.1/entrypoint.sh b/atlassian/jira/7/7.1.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.10/.docker-repository.yml b/atlassian/jira/7/7.1.10/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.10/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.10/.dockerignore b/atlassian/jira/7/7.1.10/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.10/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.10/Dockerfile b/atlassian/jira/7/7.1.10/Dockerfile deleted file mode 100644 index f4a4d282d..000000000 --- a/atlassian/jira/7/7.1.10/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.10 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.10/Makefile b/atlassian/jira/7/7.1.10/Makefile deleted file mode 100644 index 620d5a603..000000000 --- a/atlassian/jira/7/7.1.10/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.10 . diff --git a/atlassian/jira/7/7.1.10/README.md b/atlassian/jira/7/7.1.10/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.10/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.10/entrypoint.sh b/atlassian/jira/7/7.1.10/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.10/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.2/.docker-repository.yml b/atlassian/jira/7/7.1.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.2/.dockerignore b/atlassian/jira/7/7.1.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.2/Dockerfile b/atlassian/jira/7/7.1.2/Dockerfile deleted file mode 100644 index ba19c9e0a..000000000 --- a/atlassian/jira/7/7.1.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.2/Makefile b/atlassian/jira/7/7.1.2/Makefile deleted file mode 100644 index c2f355e7e..000000000 --- a/atlassian/jira/7/7.1.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.2 . diff --git a/atlassian/jira/7/7.1.2/README.md b/atlassian/jira/7/7.1.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.2/entrypoint.sh b/atlassian/jira/7/7.1.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.4/.docker-repository.yml b/atlassian/jira/7/7.1.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.4/.dockerignore b/atlassian/jira/7/7.1.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.4/Dockerfile b/atlassian/jira/7/7.1.4/Dockerfile deleted file mode 100644 index 4f80056f7..000000000 --- a/atlassian/jira/7/7.1.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.4/Makefile b/atlassian/jira/7/7.1.4/Makefile deleted file mode 100644 index f5bd527a8..000000000 --- a/atlassian/jira/7/7.1.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.4 . diff --git a/atlassian/jira/7/7.1.4/README.md b/atlassian/jira/7/7.1.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.4/entrypoint.sh b/atlassian/jira/7/7.1.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.6/.docker-repository.yml b/atlassian/jira/7/7.1.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.6/.dockerignore b/atlassian/jira/7/7.1.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.6/Dockerfile b/atlassian/jira/7/7.1.6/Dockerfile deleted file mode 100644 index 4bb4b598f..000000000 --- a/atlassian/jira/7/7.1.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.6/Makefile b/atlassian/jira/7/7.1.6/Makefile deleted file mode 100644 index dcc53b272..000000000 --- a/atlassian/jira/7/7.1.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.6 . diff --git a/atlassian/jira/7/7.1.6/README.md b/atlassian/jira/7/7.1.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.6/entrypoint.sh b/atlassian/jira/7/7.1.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.7/.docker-repository.yml b/atlassian/jira/7/7.1.7/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.7/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.7/.dockerignore b/atlassian/jira/7/7.1.7/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.7/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.7/Dockerfile b/atlassian/jira/7/7.1.7/Dockerfile deleted file mode 100644 index 98d602ad2..000000000 --- a/atlassian/jira/7/7.1.7/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.7 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.7/Makefile b/atlassian/jira/7/7.1.7/Makefile deleted file mode 100644 index 0150406ad..000000000 --- a/atlassian/jira/7/7.1.7/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.7 . diff --git a/atlassian/jira/7/7.1.7/README.md b/atlassian/jira/7/7.1.7/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.7/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.7/entrypoint.sh b/atlassian/jira/7/7.1.7/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.7/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.8/.docker-repository.yml b/atlassian/jira/7/7.1.8/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.8/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.8/.dockerignore b/atlassian/jira/7/7.1.8/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.8/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.8/Dockerfile b/atlassian/jira/7/7.1.8/Dockerfile deleted file mode 100644 index bac2351d8..000000000 --- a/atlassian/jira/7/7.1.8/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.8 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}-jira-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.8/Makefile b/atlassian/jira/7/7.1.8/Makefile deleted file mode 100644 index a3c7f5c89..000000000 --- a/atlassian/jira/7/7.1.8/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.8 . diff --git a/atlassian/jira/7/7.1.8/README.md b/atlassian/jira/7/7.1.8/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.8/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.8/entrypoint.sh b/atlassian/jira/7/7.1.8/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.8/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.1.9/.docker-repository.yml b/atlassian/jira/7/7.1.9/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.1.9/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.1.9/.dockerignore b/atlassian/jira/7/7.1.9/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.1.9/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.1.9/Dockerfile b/atlassian/jira/7/7.1.9/Dockerfile deleted file mode 100644 index cfdfbd6e2..000000000 --- a/atlassian/jira/7/7.1.9/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.1.9 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.1.9/Makefile b/atlassian/jira/7/7.1.9/Makefile deleted file mode 100644 index 410dc7fe5..000000000 --- a/atlassian/jira/7/7.1.9/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.1.9 . diff --git a/atlassian/jira/7/7.1.9/README.md b/atlassian/jira/7/7.1.9/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.1.9/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.1.9/entrypoint.sh b/atlassian/jira/7/7.1.9/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.1.9/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.10.0/.docker-repository.yml b/atlassian/jira/7/7.10.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.10.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.10.0/.dockerignore b/atlassian/jira/7/7.10.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.10.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.10.0/Dockerfile b/atlassian/jira/7/7.10.0/Dockerfile deleted file mode 100644 index a0f302de7..000000000 --- a/atlassian/jira/7/7.10.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.10.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.10.0/Makefile b/atlassian/jira/7/7.10.0/Makefile deleted file mode 100644 index 1b52be659..000000000 --- a/atlassian/jira/7/7.10.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.10.0 . diff --git a/atlassian/jira/7/7.10.0/README.md b/atlassian/jira/7/7.10.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.10.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.10.0/entrypoint.sh b/atlassian/jira/7/7.10.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.10.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.10.1/.docker-repository.yml b/atlassian/jira/7/7.10.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.10.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.10.1/.dockerignore b/atlassian/jira/7/7.10.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.10.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.10.1/Dockerfile b/atlassian/jira/7/7.10.1/Dockerfile deleted file mode 100644 index 6e545a8a8..000000000 --- a/atlassian/jira/7/7.10.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.10.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.10.1/Makefile b/atlassian/jira/7/7.10.1/Makefile deleted file mode 100644 index d9af21890..000000000 --- a/atlassian/jira/7/7.10.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.10.1 . diff --git a/atlassian/jira/7/7.10.1/README.md b/atlassian/jira/7/7.10.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.10.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.10.1/entrypoint.sh b/atlassian/jira/7/7.10.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.10.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.10.2/.docker-repository.yml b/atlassian/jira/7/7.10.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.10.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.10.2/.dockerignore b/atlassian/jira/7/7.10.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.10.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.10.2/Dockerfile b/atlassian/jira/7/7.10.2/Dockerfile deleted file mode 100644 index 5a0561f1c..000000000 --- a/atlassian/jira/7/7.10.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.10.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.10.2/Makefile b/atlassian/jira/7/7.10.2/Makefile deleted file mode 100644 index a38c01ee4..000000000 --- a/atlassian/jira/7/7.10.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.10.2 . diff --git a/atlassian/jira/7/7.10.2/README.md b/atlassian/jira/7/7.10.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.10.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.10.2/entrypoint.sh b/atlassian/jira/7/7.10.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.10.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.11.0/.docker-repository.yml b/atlassian/jira/7/7.11.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.11.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.11.0/.dockerignore b/atlassian/jira/7/7.11.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.11.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.11.0/Dockerfile b/atlassian/jira/7/7.11.0/Dockerfile deleted file mode 100644 index a2195559b..000000000 --- a/atlassian/jira/7/7.11.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.11.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.11.0/Makefile b/atlassian/jira/7/7.11.0/Makefile deleted file mode 100644 index 8696c89ba..000000000 --- a/atlassian/jira/7/7.11.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.11.0 . diff --git a/atlassian/jira/7/7.11.0/README.md b/atlassian/jira/7/7.11.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.11.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.11.0/entrypoint.sh b/atlassian/jira/7/7.11.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.11.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.11.1/.docker-repository.yml b/atlassian/jira/7/7.11.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.11.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.11.1/.dockerignore b/atlassian/jira/7/7.11.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.11.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.11.1/Dockerfile b/atlassian/jira/7/7.11.1/Dockerfile deleted file mode 100644 index ea24c559d..000000000 --- a/atlassian/jira/7/7.11.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.11.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.11.1/Makefile b/atlassian/jira/7/7.11.1/Makefile deleted file mode 100644 index 5b3888458..000000000 --- a/atlassian/jira/7/7.11.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.11.1 . diff --git a/atlassian/jira/7/7.11.1/README.md b/atlassian/jira/7/7.11.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.11.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.11.1/entrypoint.sh b/atlassian/jira/7/7.11.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.11.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.11.2/.docker-repository.yml b/atlassian/jira/7/7.11.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.11.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.11.2/.dockerignore b/atlassian/jira/7/7.11.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.11.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.11.2/Dockerfile b/atlassian/jira/7/7.11.2/Dockerfile deleted file mode 100644 index a4a924426..000000000 --- a/atlassian/jira/7/7.11.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.11.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.11.2/Makefile b/atlassian/jira/7/7.11.2/Makefile deleted file mode 100644 index 7cad5e911..000000000 --- a/atlassian/jira/7/7.11.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.11.2 . diff --git a/atlassian/jira/7/7.11.2/README.md b/atlassian/jira/7/7.11.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.11.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.11.2/entrypoint.sh b/atlassian/jira/7/7.11.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.11.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.12.0/.docker-repository.yml b/atlassian/jira/7/7.12.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.12.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.12.0/.dockerignore b/atlassian/jira/7/7.12.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.12.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.12.0/Dockerfile b/atlassian/jira/7/7.12.0/Dockerfile deleted file mode 100644 index 2befbc48f..000000000 --- a/atlassian/jira/7/7.12.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.12.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.12.0/Makefile b/atlassian/jira/7/7.12.0/Makefile deleted file mode 100644 index ca46ace4c..000000000 --- a/atlassian/jira/7/7.12.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.12.0 . diff --git a/atlassian/jira/7/7.12.0/README.md b/atlassian/jira/7/7.12.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.12.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.12.0/entrypoint.sh b/atlassian/jira/7/7.12.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.12.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.12.1/.docker-repository.yml b/atlassian/jira/7/7.12.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.12.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.12.1/.dockerignore b/atlassian/jira/7/7.12.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.12.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.12.1/Dockerfile b/atlassian/jira/7/7.12.1/Dockerfile deleted file mode 100644 index cbe320063..000000000 --- a/atlassian/jira/7/7.12.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.12.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.12.1/Makefile b/atlassian/jira/7/7.12.1/Makefile deleted file mode 100644 index c86569ef5..000000000 --- a/atlassian/jira/7/7.12.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.12.1 . diff --git a/atlassian/jira/7/7.12.1/README.md b/atlassian/jira/7/7.12.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.12.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.12.1/entrypoint.sh b/atlassian/jira/7/7.12.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.12.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.12.3/.docker-repository.yml b/atlassian/jira/7/7.12.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.12.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.12.3/.dockerignore b/atlassian/jira/7/7.12.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.12.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.12.3/Dockerfile b/atlassian/jira/7/7.12.3/Dockerfile deleted file mode 100644 index ff5c9a997..000000000 --- a/atlassian/jira/7/7.12.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.12.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.12.3/Makefile b/atlassian/jira/7/7.12.3/Makefile deleted file mode 100644 index 5485c4f70..000000000 --- a/atlassian/jira/7/7.12.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.12.3 . diff --git a/atlassian/jira/7/7.12.3/README.md b/atlassian/jira/7/7.12.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.12.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.12.3/entrypoint.sh b/atlassian/jira/7/7.12.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.12.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.0/.docker-repository.yml b/atlassian/jira/7/7.13.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.0/.dockerignore b/atlassian/jira/7/7.13.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.0/Dockerfile b/atlassian/jira/7/7.13.0/Dockerfile deleted file mode 100644 index 32d673841..000000000 --- a/atlassian/jira/7/7.13.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.0/Makefile b/atlassian/jira/7/7.13.0/Makefile deleted file mode 100644 index 5da2c7963..000000000 --- a/atlassian/jira/7/7.13.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.0 . diff --git a/atlassian/jira/7/7.13.0/README.md b/atlassian/jira/7/7.13.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.0/entrypoint.sh b/atlassian/jira/7/7.13.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.1/.docker-repository.yml b/atlassian/jira/7/7.13.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.1/.dockerignore b/atlassian/jira/7/7.13.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.1/Dockerfile b/atlassian/jira/7/7.13.1/Dockerfile deleted file mode 100644 index 4f1c76cb7..000000000 --- a/atlassian/jira/7/7.13.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.1/Makefile b/atlassian/jira/7/7.13.1/Makefile deleted file mode 100644 index e37e2b35c..000000000 --- a/atlassian/jira/7/7.13.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.1 . diff --git a/atlassian/jira/7/7.13.1/README.md b/atlassian/jira/7/7.13.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.1/entrypoint.sh b/atlassian/jira/7/7.13.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.11/.docker-repository.yml b/atlassian/jira/7/7.13.11/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.11/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.11/.dockerignore b/atlassian/jira/7/7.13.11/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.11/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.11/Dockerfile b/atlassian/jira/7/7.13.11/Dockerfile deleted file mode 100644 index 6a1bbc847..000000000 --- a/atlassian/jira/7/7.13.11/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.11 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.11/Makefile b/atlassian/jira/7/7.13.11/Makefile deleted file mode 100644 index 50d0d2038..000000000 --- a/atlassian/jira/7/7.13.11/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.11 . diff --git a/atlassian/jira/7/7.13.11/README.md b/atlassian/jira/7/7.13.11/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.11/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.11/entrypoint.sh b/atlassian/jira/7/7.13.11/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.11/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.2/.docker-repository.yml b/atlassian/jira/7/7.13.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.2/.dockerignore b/atlassian/jira/7/7.13.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.2/Dockerfile b/atlassian/jira/7/7.13.2/Dockerfile deleted file mode 100644 index 61675251c..000000000 --- a/atlassian/jira/7/7.13.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.2/Makefile b/atlassian/jira/7/7.13.2/Makefile deleted file mode 100644 index 1ca44fd6d..000000000 --- a/atlassian/jira/7/7.13.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.2 . diff --git a/atlassian/jira/7/7.13.2/README.md b/atlassian/jira/7/7.13.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.2/entrypoint.sh b/atlassian/jira/7/7.13.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.3/.docker-repository.yml b/atlassian/jira/7/7.13.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.3/.dockerignore b/atlassian/jira/7/7.13.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.3/Dockerfile b/atlassian/jira/7/7.13.3/Dockerfile deleted file mode 100644 index 3bb690fbe..000000000 --- a/atlassian/jira/7/7.13.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.3/Makefile b/atlassian/jira/7/7.13.3/Makefile deleted file mode 100644 index f98ce31c2..000000000 --- a/atlassian/jira/7/7.13.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.3 . diff --git a/atlassian/jira/7/7.13.3/README.md b/atlassian/jira/7/7.13.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.3/entrypoint.sh b/atlassian/jira/7/7.13.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.4/.docker-repository.yml b/atlassian/jira/7/7.13.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.4/.dockerignore b/atlassian/jira/7/7.13.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.4/Dockerfile b/atlassian/jira/7/7.13.4/Dockerfile deleted file mode 100644 index 7990267e9..000000000 --- a/atlassian/jira/7/7.13.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.4/Makefile b/atlassian/jira/7/7.13.4/Makefile deleted file mode 100644 index 3003fd4f8..000000000 --- a/atlassian/jira/7/7.13.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.4 . diff --git a/atlassian/jira/7/7.13.4/README.md b/atlassian/jira/7/7.13.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.4/entrypoint.sh b/atlassian/jira/7/7.13.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.5/.docker-repository.yml b/atlassian/jira/7/7.13.5/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.5/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.5/.dockerignore b/atlassian/jira/7/7.13.5/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.5/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.5/Dockerfile b/atlassian/jira/7/7.13.5/Dockerfile deleted file mode 100644 index 9dc0928e3..000000000 --- a/atlassian/jira/7/7.13.5/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.5 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.5/Makefile b/atlassian/jira/7/7.13.5/Makefile deleted file mode 100644 index 6b0b5d4fa..000000000 --- a/atlassian/jira/7/7.13.5/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.5 . diff --git a/atlassian/jira/7/7.13.5/README.md b/atlassian/jira/7/7.13.5/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.5/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.5/entrypoint.sh b/atlassian/jira/7/7.13.5/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.5/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.6/.docker-repository.yml b/atlassian/jira/7/7.13.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.6/.dockerignore b/atlassian/jira/7/7.13.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.6/Dockerfile b/atlassian/jira/7/7.13.6/Dockerfile deleted file mode 100644 index dfd1d9712..000000000 --- a/atlassian/jira/7/7.13.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.6/Makefile b/atlassian/jira/7/7.13.6/Makefile deleted file mode 100644 index 5426e1914..000000000 --- a/atlassian/jira/7/7.13.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.6 . diff --git a/atlassian/jira/7/7.13.6/README.md b/atlassian/jira/7/7.13.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.6/entrypoint.sh b/atlassian/jira/7/7.13.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.8/.docker-repository.yml b/atlassian/jira/7/7.13.8/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.8/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.8/.dockerignore b/atlassian/jira/7/7.13.8/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.8/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.8/Dockerfile b/atlassian/jira/7/7.13.8/Dockerfile deleted file mode 100644 index e19343579..000000000 --- a/atlassian/jira/7/7.13.8/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.8 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.8/Makefile b/atlassian/jira/7/7.13.8/Makefile deleted file mode 100644 index cd67bf905..000000000 --- a/atlassian/jira/7/7.13.8/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.8 . diff --git a/atlassian/jira/7/7.13.8/README.md b/atlassian/jira/7/7.13.8/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.8/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.8/entrypoint.sh b/atlassian/jira/7/7.13.8/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.8/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.13.9/.docker-repository.yml b/atlassian/jira/7/7.13.9/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.13.9/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.13.9/.dockerignore b/atlassian/jira/7/7.13.9/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.13.9/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.13.9/Dockerfile b/atlassian/jira/7/7.13.9/Dockerfile deleted file mode 100644 index 3efaa8d12..000000000 --- a/atlassian/jira/7/7.13.9/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.13.9 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.13.9/Makefile b/atlassian/jira/7/7.13.9/Makefile deleted file mode 100644 index a9edcba91..000000000 --- a/atlassian/jira/7/7.13.9/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.13.9 . diff --git a/atlassian/jira/7/7.13.9/README.md b/atlassian/jira/7/7.13.9/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.13.9/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.13.9/entrypoint.sh b/atlassian/jira/7/7.13.9/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.13.9/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.0/.docker-repository.yml b/atlassian/jira/7/7.2.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.0/.dockerignore b/atlassian/jira/7/7.2.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.0/Dockerfile b/atlassian/jira/7/7.2.0/Dockerfile deleted file mode 100644 index b844d0cf7..000000000 --- a/atlassian/jira/7/7.2.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.0/Makefile b/atlassian/jira/7/7.2.0/Makefile deleted file mode 100644 index 674b0183f..000000000 --- a/atlassian/jira/7/7.2.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.0 . diff --git a/atlassian/jira/7/7.2.0/README.md b/atlassian/jira/7/7.2.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.0/entrypoint.sh b/atlassian/jira/7/7.2.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.1/.docker-repository.yml b/atlassian/jira/7/7.2.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.1/.dockerignore b/atlassian/jira/7/7.2.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.1/Dockerfile b/atlassian/jira/7/7.2.1/Dockerfile deleted file mode 100644 index baed8a983..000000000 --- a/atlassian/jira/7/7.2.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.1/Makefile b/atlassian/jira/7/7.2.1/Makefile deleted file mode 100644 index 142b75e00..000000000 --- a/atlassian/jira/7/7.2.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.1 . diff --git a/atlassian/jira/7/7.2.1/README.md b/atlassian/jira/7/7.2.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.1/entrypoint.sh b/atlassian/jira/7/7.2.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.10/.docker-repository.yml b/atlassian/jira/7/7.2.10/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.10/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.10/.dockerignore b/atlassian/jira/7/7.2.10/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.10/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.10/Dockerfile b/atlassian/jira/7/7.2.10/Dockerfile deleted file mode 100644 index ddd5a4b6b..000000000 --- a/atlassian/jira/7/7.2.10/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.10 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.10/Makefile b/atlassian/jira/7/7.2.10/Makefile deleted file mode 100644 index fefd3058f..000000000 --- a/atlassian/jira/7/7.2.10/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.10 . diff --git a/atlassian/jira/7/7.2.10/README.md b/atlassian/jira/7/7.2.10/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.10/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.10/entrypoint.sh b/atlassian/jira/7/7.2.10/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.10/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.11/.docker-repository.yml b/atlassian/jira/7/7.2.11/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.11/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.11/.dockerignore b/atlassian/jira/7/7.2.11/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.11/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.11/Dockerfile b/atlassian/jira/7/7.2.11/Dockerfile deleted file mode 100644 index e6d17c901..000000000 --- a/atlassian/jira/7/7.2.11/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.11 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.11/Makefile b/atlassian/jira/7/7.2.11/Makefile deleted file mode 100644 index 23967cd19..000000000 --- a/atlassian/jira/7/7.2.11/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.11 . diff --git a/atlassian/jira/7/7.2.11/README.md b/atlassian/jira/7/7.2.11/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.11/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.11/entrypoint.sh b/atlassian/jira/7/7.2.11/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.11/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.12/.docker-repository.yml b/atlassian/jira/7/7.2.12/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.12/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.12/.dockerignore b/atlassian/jira/7/7.2.12/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.12/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.12/Dockerfile b/atlassian/jira/7/7.2.12/Dockerfile deleted file mode 100644 index 35b9499ce..000000000 --- a/atlassian/jira/7/7.2.12/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.12 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.12/Makefile b/atlassian/jira/7/7.2.12/Makefile deleted file mode 100644 index 1b26f82bb..000000000 --- a/atlassian/jira/7/7.2.12/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.12 . diff --git a/atlassian/jira/7/7.2.12/README.md b/atlassian/jira/7/7.2.12/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.12/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.12/entrypoint.sh b/atlassian/jira/7/7.2.12/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.12/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.13/.docker-repository.yml b/atlassian/jira/7/7.2.13/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.13/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.13/.dockerignore b/atlassian/jira/7/7.2.13/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.13/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.13/Dockerfile b/atlassian/jira/7/7.2.13/Dockerfile deleted file mode 100644 index 45912f43a..000000000 --- a/atlassian/jira/7/7.2.13/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.13 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.13/Makefile b/atlassian/jira/7/7.2.13/Makefile deleted file mode 100644 index 233a12b8e..000000000 --- a/atlassian/jira/7/7.2.13/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.13 . diff --git a/atlassian/jira/7/7.2.13/README.md b/atlassian/jira/7/7.2.13/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.13/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.13/entrypoint.sh b/atlassian/jira/7/7.2.13/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.13/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.14/.docker-repository.yml b/atlassian/jira/7/7.2.14/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.14/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.14/.dockerignore b/atlassian/jira/7/7.2.14/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.14/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.14/Dockerfile b/atlassian/jira/7/7.2.14/Dockerfile deleted file mode 100644 index daf88ce43..000000000 --- a/atlassian/jira/7/7.2.14/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.14 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.14/Makefile b/atlassian/jira/7/7.2.14/Makefile deleted file mode 100644 index 460be90f3..000000000 --- a/atlassian/jira/7/7.2.14/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.14 . diff --git a/atlassian/jira/7/7.2.14/README.md b/atlassian/jira/7/7.2.14/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.14/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.14/entrypoint.sh b/atlassian/jira/7/7.2.14/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.14/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.15/.docker-repository.yml b/atlassian/jira/7/7.2.15/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.15/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.15/.dockerignore b/atlassian/jira/7/7.2.15/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.15/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.15/Dockerfile b/atlassian/jira/7/7.2.15/Dockerfile deleted file mode 100644 index 6a029423e..000000000 --- a/atlassian/jira/7/7.2.15/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.15 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.15/Makefile b/atlassian/jira/7/7.2.15/Makefile deleted file mode 100644 index b1a683876..000000000 --- a/atlassian/jira/7/7.2.15/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.15 . diff --git a/atlassian/jira/7/7.2.15/README.md b/atlassian/jira/7/7.2.15/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.15/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.15/entrypoint.sh b/atlassian/jira/7/7.2.15/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.15/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.2/.docker-repository.yml b/atlassian/jira/7/7.2.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.2/.dockerignore b/atlassian/jira/7/7.2.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.2/Dockerfile b/atlassian/jira/7/7.2.2/Dockerfile deleted file mode 100644 index fd0548d1a..000000000 --- a/atlassian/jira/7/7.2.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.2/Makefile b/atlassian/jira/7/7.2.2/Makefile deleted file mode 100644 index 3d16590aa..000000000 --- a/atlassian/jira/7/7.2.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.2 . diff --git a/atlassian/jira/7/7.2.2/README.md b/atlassian/jira/7/7.2.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.2/entrypoint.sh b/atlassian/jira/7/7.2.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.3/.docker-repository.yml b/atlassian/jira/7/7.2.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.3/.dockerignore b/atlassian/jira/7/7.2.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.3/Dockerfile b/atlassian/jira/7/7.2.3/Dockerfile deleted file mode 100644 index 3de5f002e..000000000 --- a/atlassian/jira/7/7.2.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.3/Makefile b/atlassian/jira/7/7.2.3/Makefile deleted file mode 100644 index a71c4c82a..000000000 --- a/atlassian/jira/7/7.2.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.3 . diff --git a/atlassian/jira/7/7.2.3/README.md b/atlassian/jira/7/7.2.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.3/entrypoint.sh b/atlassian/jira/7/7.2.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.4/.docker-repository.yml b/atlassian/jira/7/7.2.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.4/.dockerignore b/atlassian/jira/7/7.2.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.4/Dockerfile b/atlassian/jira/7/7.2.4/Dockerfile deleted file mode 100644 index 0306f95d6..000000000 --- a/atlassian/jira/7/7.2.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.4/Makefile b/atlassian/jira/7/7.2.4/Makefile deleted file mode 100644 index 6c92ba06f..000000000 --- a/atlassian/jira/7/7.2.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.4 . diff --git a/atlassian/jira/7/7.2.4/README.md b/atlassian/jira/7/7.2.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.4/entrypoint.sh b/atlassian/jira/7/7.2.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.6/.docker-repository.yml b/atlassian/jira/7/7.2.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.6/.dockerignore b/atlassian/jira/7/7.2.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.6/Dockerfile b/atlassian/jira/7/7.2.6/Dockerfile deleted file mode 100644 index c61c921c9..000000000 --- a/atlassian/jira/7/7.2.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.6/Makefile b/atlassian/jira/7/7.2.6/Makefile deleted file mode 100644 index 6b4deb64c..000000000 --- a/atlassian/jira/7/7.2.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.6 . diff --git a/atlassian/jira/7/7.2.6/README.md b/atlassian/jira/7/7.2.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.6/entrypoint.sh b/atlassian/jira/7/7.2.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.7/.docker-repository.yml b/atlassian/jira/7/7.2.7/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.7/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.7/.dockerignore b/atlassian/jira/7/7.2.7/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.7/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.7/Dockerfile b/atlassian/jira/7/7.2.7/Dockerfile deleted file mode 100644 index 2ce57a56e..000000000 --- a/atlassian/jira/7/7.2.7/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.7 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.7/Makefile b/atlassian/jira/7/7.2.7/Makefile deleted file mode 100644 index da51141eb..000000000 --- a/atlassian/jira/7/7.2.7/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.7 . diff --git a/atlassian/jira/7/7.2.7/README.md b/atlassian/jira/7/7.2.7/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.7/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.7/entrypoint.sh b/atlassian/jira/7/7.2.7/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.7/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.8/.docker-repository.yml b/atlassian/jira/7/7.2.8/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.8/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.8/.dockerignore b/atlassian/jira/7/7.2.8/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.8/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.8/Dockerfile b/atlassian/jira/7/7.2.8/Dockerfile deleted file mode 100644 index 8aa726749..000000000 --- a/atlassian/jira/7/7.2.8/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.8 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.8/Makefile b/atlassian/jira/7/7.2.8/Makefile deleted file mode 100644 index d519af2b2..000000000 --- a/atlassian/jira/7/7.2.8/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.8 . diff --git a/atlassian/jira/7/7.2.8/README.md b/atlassian/jira/7/7.2.8/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.8/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.8/entrypoint.sh b/atlassian/jira/7/7.2.8/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.8/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.2.9/.docker-repository.yml b/atlassian/jira/7/7.2.9/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.2.9/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.2.9/.dockerignore b/atlassian/jira/7/7.2.9/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.2.9/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.2.9/Dockerfile b/atlassian/jira/7/7.2.9/Dockerfile deleted file mode 100644 index a29c871e2..000000000 --- a/atlassian/jira/7/7.2.9/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.2.9 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.2.9/Makefile b/atlassian/jira/7/7.2.9/Makefile deleted file mode 100644 index 51087c069..000000000 --- a/atlassian/jira/7/7.2.9/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.2.9 . diff --git a/atlassian/jira/7/7.2.9/README.md b/atlassian/jira/7/7.2.9/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.2.9/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.2.9/entrypoint.sh b/atlassian/jira/7/7.2.9/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.2.9/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.0/.docker-repository.yml b/atlassian/jira/7/7.3.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.0/.dockerignore b/atlassian/jira/7/7.3.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.0/Dockerfile b/atlassian/jira/7/7.3.0/Dockerfile deleted file mode 100644 index 75be7bce6..000000000 --- a/atlassian/jira/7/7.3.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.0/Makefile b/atlassian/jira/7/7.3.0/Makefile deleted file mode 100644 index b744b32be..000000000 --- a/atlassian/jira/7/7.3.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.0 . diff --git a/atlassian/jira/7/7.3.0/README.md b/atlassian/jira/7/7.3.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.0/entrypoint.sh b/atlassian/jira/7/7.3.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.1/.docker-repository.yml b/atlassian/jira/7/7.3.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.1/.dockerignore b/atlassian/jira/7/7.3.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.1/Dockerfile b/atlassian/jira/7/7.3.1/Dockerfile deleted file mode 100644 index 85f4595c1..000000000 --- a/atlassian/jira/7/7.3.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.1/Makefile b/atlassian/jira/7/7.3.1/Makefile deleted file mode 100644 index e6ca9757f..000000000 --- a/atlassian/jira/7/7.3.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.1 . diff --git a/atlassian/jira/7/7.3.1/README.md b/atlassian/jira/7/7.3.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.1/entrypoint.sh b/atlassian/jira/7/7.3.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.2/.docker-repository.yml b/atlassian/jira/7/7.3.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.2/.dockerignore b/atlassian/jira/7/7.3.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.2/Dockerfile b/atlassian/jira/7/7.3.2/Dockerfile deleted file mode 100644 index ee39f3bfa..000000000 --- a/atlassian/jira/7/7.3.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.2/Makefile b/atlassian/jira/7/7.3.2/Makefile deleted file mode 100644 index f19a88679..000000000 --- a/atlassian/jira/7/7.3.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.2 . diff --git a/atlassian/jira/7/7.3.2/README.md b/atlassian/jira/7/7.3.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.2/entrypoint.sh b/atlassian/jira/7/7.3.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.3/.docker-repository.yml b/atlassian/jira/7/7.3.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.3/.dockerignore b/atlassian/jira/7/7.3.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.3/Dockerfile b/atlassian/jira/7/7.3.3/Dockerfile deleted file mode 100644 index 193a929ba..000000000 --- a/atlassian/jira/7/7.3.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.3/Makefile b/atlassian/jira/7/7.3.3/Makefile deleted file mode 100644 index 5656105a5..000000000 --- a/atlassian/jira/7/7.3.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.3 . diff --git a/atlassian/jira/7/7.3.3/README.md b/atlassian/jira/7/7.3.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.3/entrypoint.sh b/atlassian/jira/7/7.3.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.4/.docker-repository.yml b/atlassian/jira/7/7.3.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.4/.dockerignore b/atlassian/jira/7/7.3.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.4/Dockerfile b/atlassian/jira/7/7.3.4/Dockerfile deleted file mode 100644 index 268661f8f..000000000 --- a/atlassian/jira/7/7.3.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.4/Makefile b/atlassian/jira/7/7.3.4/Makefile deleted file mode 100644 index 45256309c..000000000 --- a/atlassian/jira/7/7.3.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.4 . diff --git a/atlassian/jira/7/7.3.4/README.md b/atlassian/jira/7/7.3.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.4/entrypoint.sh b/atlassian/jira/7/7.3.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.5/.docker-repository.yml b/atlassian/jira/7/7.3.5/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.5/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.5/.dockerignore b/atlassian/jira/7/7.3.5/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.5/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.5/Dockerfile b/atlassian/jira/7/7.3.5/Dockerfile deleted file mode 100644 index dcbabee74..000000000 --- a/atlassian/jira/7/7.3.5/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.5 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.5/Makefile b/atlassian/jira/7/7.3.5/Makefile deleted file mode 100644 index dcea2c3b0..000000000 --- a/atlassian/jira/7/7.3.5/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.5 . diff --git a/atlassian/jira/7/7.3.5/README.md b/atlassian/jira/7/7.3.5/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.5/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.5/entrypoint.sh b/atlassian/jira/7/7.3.5/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.5/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.6/.docker-repository.yml b/atlassian/jira/7/7.3.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.6/.dockerignore b/atlassian/jira/7/7.3.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.6/Dockerfile b/atlassian/jira/7/7.3.6/Dockerfile deleted file mode 100644 index 188f6857d..000000000 --- a/atlassian/jira/7/7.3.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.6/Makefile b/atlassian/jira/7/7.3.6/Makefile deleted file mode 100644 index 7a99ba206..000000000 --- a/atlassian/jira/7/7.3.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.6 . diff --git a/atlassian/jira/7/7.3.6/README.md b/atlassian/jira/7/7.3.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.6/entrypoint.sh b/atlassian/jira/7/7.3.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.7/.docker-repository.yml b/atlassian/jira/7/7.3.7/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.7/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.7/.dockerignore b/atlassian/jira/7/7.3.7/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.7/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.7/Dockerfile b/atlassian/jira/7/7.3.7/Dockerfile deleted file mode 100644 index f274ac5c1..000000000 --- a/atlassian/jira/7/7.3.7/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.7 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.7/Makefile b/atlassian/jira/7/7.3.7/Makefile deleted file mode 100644 index 7791706ad..000000000 --- a/atlassian/jira/7/7.3.7/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.7 . diff --git a/atlassian/jira/7/7.3.7/README.md b/atlassian/jira/7/7.3.7/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.7/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.7/entrypoint.sh b/atlassian/jira/7/7.3.7/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.7/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.8/.docker-repository.yml b/atlassian/jira/7/7.3.8/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.8/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.8/.dockerignore b/atlassian/jira/7/7.3.8/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.8/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.8/Dockerfile b/atlassian/jira/7/7.3.8/Dockerfile deleted file mode 100644 index fcb483846..000000000 --- a/atlassian/jira/7/7.3.8/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.8 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.8/Makefile b/atlassian/jira/7/7.3.8/Makefile deleted file mode 100644 index 1efa30532..000000000 --- a/atlassian/jira/7/7.3.8/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.8 . diff --git a/atlassian/jira/7/7.3.8/README.md b/atlassian/jira/7/7.3.8/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.8/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.8/entrypoint.sh b/atlassian/jira/7/7.3.8/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.8/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.3.9/.docker-repository.yml b/atlassian/jira/7/7.3.9/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.3.9/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.3.9/.dockerignore b/atlassian/jira/7/7.3.9/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.3.9/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.3.9/Dockerfile b/atlassian/jira/7/7.3.9/Dockerfile deleted file mode 100644 index 1d85b041b..000000000 --- a/atlassian/jira/7/7.3.9/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.3.9 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.3.9/Makefile b/atlassian/jira/7/7.3.9/Makefile deleted file mode 100644 index 90583bc03..000000000 --- a/atlassian/jira/7/7.3.9/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.3.9 . diff --git a/atlassian/jira/7/7.3.9/README.md b/atlassian/jira/7/7.3.9/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.3.9/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.3.9/entrypoint.sh b/atlassian/jira/7/7.3.9/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.3.9/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.0/.docker-repository.yml b/atlassian/jira/7/7.4.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.0/.dockerignore b/atlassian/jira/7/7.4.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.0/Dockerfile b/atlassian/jira/7/7.4.0/Dockerfile deleted file mode 100644 index 1d5527ad5..000000000 --- a/atlassian/jira/7/7.4.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.0/Makefile b/atlassian/jira/7/7.4.0/Makefile deleted file mode 100644 index 52e9ac418..000000000 --- a/atlassian/jira/7/7.4.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.0 . diff --git a/atlassian/jira/7/7.4.0/README.md b/atlassian/jira/7/7.4.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.0/entrypoint.sh b/atlassian/jira/7/7.4.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.1/.docker-repository.yml b/atlassian/jira/7/7.4.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.1/.dockerignore b/atlassian/jira/7/7.4.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.1/Dockerfile b/atlassian/jira/7/7.4.1/Dockerfile deleted file mode 100644 index 6f74d409b..000000000 --- a/atlassian/jira/7/7.4.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.1/Makefile b/atlassian/jira/7/7.4.1/Makefile deleted file mode 100644 index c7c83da76..000000000 --- a/atlassian/jira/7/7.4.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.1 . diff --git a/atlassian/jira/7/7.4.1/README.md b/atlassian/jira/7/7.4.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.1/entrypoint.sh b/atlassian/jira/7/7.4.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.2/.docker-repository.yml b/atlassian/jira/7/7.4.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.2/.dockerignore b/atlassian/jira/7/7.4.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.2/Dockerfile b/atlassian/jira/7/7.4.2/Dockerfile deleted file mode 100644 index 5aba5380a..000000000 --- a/atlassian/jira/7/7.4.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.2/Makefile b/atlassian/jira/7/7.4.2/Makefile deleted file mode 100644 index 4fdc41139..000000000 --- a/atlassian/jira/7/7.4.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.2 . diff --git a/atlassian/jira/7/7.4.2/README.md b/atlassian/jira/7/7.4.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.2/entrypoint.sh b/atlassian/jira/7/7.4.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.3/.docker-repository.yml b/atlassian/jira/7/7.4.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.3/.dockerignore b/atlassian/jira/7/7.4.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.3/Dockerfile b/atlassian/jira/7/7.4.3/Dockerfile deleted file mode 100644 index 20063c3f2..000000000 --- a/atlassian/jira/7/7.4.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.3/Makefile b/atlassian/jira/7/7.4.3/Makefile deleted file mode 100644 index 009baca7e..000000000 --- a/atlassian/jira/7/7.4.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.3 . diff --git a/atlassian/jira/7/7.4.3/README.md b/atlassian/jira/7/7.4.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.3/entrypoint.sh b/atlassian/jira/7/7.4.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.4/.docker-repository.yml b/atlassian/jira/7/7.4.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.4/.dockerignore b/atlassian/jira/7/7.4.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.4/Dockerfile b/atlassian/jira/7/7.4.4/Dockerfile deleted file mode 100644 index 8980155df..000000000 --- a/atlassian/jira/7/7.4.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.4/Makefile b/atlassian/jira/7/7.4.4/Makefile deleted file mode 100644 index 4628d54ba..000000000 --- a/atlassian/jira/7/7.4.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.4 . diff --git a/atlassian/jira/7/7.4.4/README.md b/atlassian/jira/7/7.4.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.4/entrypoint.sh b/atlassian/jira/7/7.4.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.5/.docker-repository.yml b/atlassian/jira/7/7.4.5/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.5/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.5/.dockerignore b/atlassian/jira/7/7.4.5/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.5/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.5/Dockerfile b/atlassian/jira/7/7.4.5/Dockerfile deleted file mode 100644 index 8431bda78..000000000 --- a/atlassian/jira/7/7.4.5/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.5 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.5/Makefile b/atlassian/jira/7/7.4.5/Makefile deleted file mode 100644 index 99d248d42..000000000 --- a/atlassian/jira/7/7.4.5/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.5 . diff --git a/atlassian/jira/7/7.4.5/README.md b/atlassian/jira/7/7.4.5/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.5/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.5/entrypoint.sh b/atlassian/jira/7/7.4.5/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.5/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.4.6/.docker-repository.yml b/atlassian/jira/7/7.4.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.4.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.4.6/.dockerignore b/atlassian/jira/7/7.4.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.4.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.4.6/Dockerfile b/atlassian/jira/7/7.4.6/Dockerfile deleted file mode 100644 index d4691ceab..000000000 --- a/atlassian/jira/7/7.4.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.4.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.4.6/Makefile b/atlassian/jira/7/7.4.6/Makefile deleted file mode 100644 index 7dd540b9b..000000000 --- a/atlassian/jira/7/7.4.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.4.6 . diff --git a/atlassian/jira/7/7.4.6/README.md b/atlassian/jira/7/7.4.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.4.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.4.6/entrypoint.sh b/atlassian/jira/7/7.4.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.4.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.5.0/.docker-repository.yml b/atlassian/jira/7/7.5.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.5.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.5.0/.dockerignore b/atlassian/jira/7/7.5.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.5.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.5.0/Dockerfile b/atlassian/jira/7/7.5.0/Dockerfile deleted file mode 100644 index 5bb1823dd..000000000 --- a/atlassian/jira/7/7.5.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.5.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.5.0/Makefile b/atlassian/jira/7/7.5.0/Makefile deleted file mode 100644 index 79ae30952..000000000 --- a/atlassian/jira/7/7.5.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.5.0 . diff --git a/atlassian/jira/7/7.5.0/README.md b/atlassian/jira/7/7.5.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.5.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.5.0/entrypoint.sh b/atlassian/jira/7/7.5.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.5.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.5.1/.docker-repository.yml b/atlassian/jira/7/7.5.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.5.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.5.1/.dockerignore b/atlassian/jira/7/7.5.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.5.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.5.1/Dockerfile b/atlassian/jira/7/7.5.1/Dockerfile deleted file mode 100644 index c6d46d9de..000000000 --- a/atlassian/jira/7/7.5.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.5.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.5.1/Makefile b/atlassian/jira/7/7.5.1/Makefile deleted file mode 100644 index f27d551d1..000000000 --- a/atlassian/jira/7/7.5.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.5.1 . diff --git a/atlassian/jira/7/7.5.1/README.md b/atlassian/jira/7/7.5.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.5.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.5.1/entrypoint.sh b/atlassian/jira/7/7.5.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.5.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.5.2/.docker-repository.yml b/atlassian/jira/7/7.5.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.5.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.5.2/.dockerignore b/atlassian/jira/7/7.5.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.5.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.5.2/Dockerfile b/atlassian/jira/7/7.5.2/Dockerfile deleted file mode 100644 index 5940efb6b..000000000 --- a/atlassian/jira/7/7.5.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.5.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.5.2/Makefile b/atlassian/jira/7/7.5.2/Makefile deleted file mode 100644 index bff56675e..000000000 --- a/atlassian/jira/7/7.5.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.5.2 . diff --git a/atlassian/jira/7/7.5.2/README.md b/atlassian/jira/7/7.5.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.5.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.5.2/entrypoint.sh b/atlassian/jira/7/7.5.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.5.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.5.3/.docker-repository.yml b/atlassian/jira/7/7.5.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.5.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.5.3/.dockerignore b/atlassian/jira/7/7.5.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.5.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.5.3/Dockerfile b/atlassian/jira/7/7.5.3/Dockerfile deleted file mode 100644 index 93a55b9b4..000000000 --- a/atlassian/jira/7/7.5.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.5.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.5.3/Makefile b/atlassian/jira/7/7.5.3/Makefile deleted file mode 100644 index 629bbb09d..000000000 --- a/atlassian/jira/7/7.5.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.5.3 . diff --git a/atlassian/jira/7/7.5.3/README.md b/atlassian/jira/7/7.5.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.5.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.5.3/entrypoint.sh b/atlassian/jira/7/7.5.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.5.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.5.4/.docker-repository.yml b/atlassian/jira/7/7.5.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.5.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.5.4/.dockerignore b/atlassian/jira/7/7.5.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.5.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.5.4/Dockerfile b/atlassian/jira/7/7.5.4/Dockerfile deleted file mode 100644 index 0fb88b1ec..000000000 --- a/atlassian/jira/7/7.5.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.5.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.5.4/Makefile b/atlassian/jira/7/7.5.4/Makefile deleted file mode 100644 index 7a62f47df..000000000 --- a/atlassian/jira/7/7.5.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.5.4 . diff --git a/atlassian/jira/7/7.5.4/README.md b/atlassian/jira/7/7.5.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.5.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.5.4/entrypoint.sh b/atlassian/jira/7/7.5.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.5.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.0/.docker-repository.yml b/atlassian/jira/7/7.6.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.0/.dockerignore b/atlassian/jira/7/7.6.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.0/Dockerfile b/atlassian/jira/7/7.6.0/Dockerfile deleted file mode 100644 index 05617e427..000000000 --- a/atlassian/jira/7/7.6.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.0/Makefile b/atlassian/jira/7/7.6.0/Makefile deleted file mode 100644 index 22296bdc8..000000000 --- a/atlassian/jira/7/7.6.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.0 . diff --git a/atlassian/jira/7/7.6.0/README.md b/atlassian/jira/7/7.6.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.0/entrypoint.sh b/atlassian/jira/7/7.6.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.1/.docker-repository.yml b/atlassian/jira/7/7.6.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.1/.dockerignore b/atlassian/jira/7/7.6.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.1/Dockerfile b/atlassian/jira/7/7.6.1/Dockerfile deleted file mode 100644 index b64b86a27..000000000 --- a/atlassian/jira/7/7.6.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.1/Makefile b/atlassian/jira/7/7.6.1/Makefile deleted file mode 100644 index 0f3b0d140..000000000 --- a/atlassian/jira/7/7.6.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.1 . diff --git a/atlassian/jira/7/7.6.1/README.md b/atlassian/jira/7/7.6.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.1/entrypoint.sh b/atlassian/jira/7/7.6.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.10/.docker-repository.yml b/atlassian/jira/7/7.6.10/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.10/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.10/.dockerignore b/atlassian/jira/7/7.6.10/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.10/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.10/Dockerfile b/atlassian/jira/7/7.6.10/Dockerfile deleted file mode 100644 index ed257cf20..000000000 --- a/atlassian/jira/7/7.6.10/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.10 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.10/Makefile b/atlassian/jira/7/7.6.10/Makefile deleted file mode 100644 index edac4d2f6..000000000 --- a/atlassian/jira/7/7.6.10/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.10 . diff --git a/atlassian/jira/7/7.6.10/README.md b/atlassian/jira/7/7.6.10/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.10/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.10/entrypoint.sh b/atlassian/jira/7/7.6.10/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.10/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.11/.docker-repository.yml b/atlassian/jira/7/7.6.11/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.11/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.11/.dockerignore b/atlassian/jira/7/7.6.11/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.11/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.11/Dockerfile b/atlassian/jira/7/7.6.11/Dockerfile deleted file mode 100644 index d33d794a2..000000000 --- a/atlassian/jira/7/7.6.11/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.11 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.11/Makefile b/atlassian/jira/7/7.6.11/Makefile deleted file mode 100644 index f1a503f40..000000000 --- a/atlassian/jira/7/7.6.11/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.11 \ No newline at end of file diff --git a/atlassian/jira/7/7.6.11/README.md b/atlassian/jira/7/7.6.11/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.11/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.11/entrypoint.sh b/atlassian/jira/7/7.6.11/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.11/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.12/.docker-repository.yml b/atlassian/jira/7/7.6.12/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.12/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.12/.dockerignore b/atlassian/jira/7/7.6.12/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.12/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.12/Dockerfile b/atlassian/jira/7/7.6.12/Dockerfile deleted file mode 100644 index dbf1c3182..000000000 --- a/atlassian/jira/7/7.6.12/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.12 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.12/Makefile b/atlassian/jira/7/7.6.12/Makefile deleted file mode 100644 index 95ea442dc..000000000 --- a/atlassian/jira/7/7.6.12/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.12 . diff --git a/atlassian/jira/7/7.6.12/README.md b/atlassian/jira/7/7.6.12/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.12/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.12/entrypoint.sh b/atlassian/jira/7/7.6.12/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.12/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.13/.docker-repository.yml b/atlassian/jira/7/7.6.13/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.13/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.13/.dockerignore b/atlassian/jira/7/7.6.13/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.13/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.13/Dockerfile b/atlassian/jira/7/7.6.13/Dockerfile deleted file mode 100644 index e174a3df8..000000000 --- a/atlassian/jira/7/7.6.13/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.13 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.13/Makefile b/atlassian/jira/7/7.6.13/Makefile deleted file mode 100644 index 2720d6482..000000000 --- a/atlassian/jira/7/7.6.13/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.13 . diff --git a/atlassian/jira/7/7.6.13/README.md b/atlassian/jira/7/7.6.13/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.13/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.13/entrypoint.sh b/atlassian/jira/7/7.6.13/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.13/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.14/.docker-repository.yml b/atlassian/jira/7/7.6.14/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.14/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.14/.dockerignore b/atlassian/jira/7/7.6.14/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.14/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.14/Dockerfile b/atlassian/jira/7/7.6.14/Dockerfile deleted file mode 100644 index 55aa10be3..000000000 --- a/atlassian/jira/7/7.6.14/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.14 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.14/Makefile b/atlassian/jira/7/7.6.14/Makefile deleted file mode 100644 index bc18cc2a6..000000000 --- a/atlassian/jira/7/7.6.14/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.14 . diff --git a/atlassian/jira/7/7.6.14/README.md b/atlassian/jira/7/7.6.14/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.14/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.14/entrypoint.sh b/atlassian/jira/7/7.6.14/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.14/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.15/.docker-repository.yml b/atlassian/jira/7/7.6.15/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.15/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.15/.dockerignore b/atlassian/jira/7/7.6.15/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.15/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.15/Dockerfile b/atlassian/jira/7/7.6.15/Dockerfile deleted file mode 100644 index 2aea85a3d..000000000 --- a/atlassian/jira/7/7.6.15/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.15 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.15/Makefile b/atlassian/jira/7/7.6.15/Makefile deleted file mode 100644 index de0914463..000000000 --- a/atlassian/jira/7/7.6.15/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.15 . diff --git a/atlassian/jira/7/7.6.15/README.md b/atlassian/jira/7/7.6.15/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.15/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.15/entrypoint.sh b/atlassian/jira/7/7.6.15/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.15/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.16/.docker-repository.yml b/atlassian/jira/7/7.6.16/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.16/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.16/.dockerignore b/atlassian/jira/7/7.6.16/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.16/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.16/Dockerfile b/atlassian/jira/7/7.6.16/Dockerfile deleted file mode 100644 index 2cdb83881..000000000 --- a/atlassian/jira/7/7.6.16/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.16 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.16/Makefile b/atlassian/jira/7/7.6.16/Makefile deleted file mode 100644 index 53a9333f0..000000000 --- a/atlassian/jira/7/7.6.16/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.16 . diff --git a/atlassian/jira/7/7.6.16/README.md b/atlassian/jira/7/7.6.16/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.16/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.16/entrypoint.sh b/atlassian/jira/7/7.6.16/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.16/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.17/.docker-repository.yml b/atlassian/jira/7/7.6.17/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.17/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.17/.dockerignore b/atlassian/jira/7/7.6.17/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.17/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.17/Dockerfile b/atlassian/jira/7/7.6.17/Dockerfile deleted file mode 100644 index e12c6532f..000000000 --- a/atlassian/jira/7/7.6.17/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.17 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.17/Makefile b/atlassian/jira/7/7.6.17/Makefile deleted file mode 100644 index 456033f2d..000000000 --- a/atlassian/jira/7/7.6.17/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.17 . diff --git a/atlassian/jira/7/7.6.17/README.md b/atlassian/jira/7/7.6.17/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.17/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.17/entrypoint.sh b/atlassian/jira/7/7.6.17/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.17/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.2/.docker-repository.yml b/atlassian/jira/7/7.6.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.2/.dockerignore b/atlassian/jira/7/7.6.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.2/Dockerfile b/atlassian/jira/7/7.6.2/Dockerfile deleted file mode 100644 index 8d6fc9d86..000000000 --- a/atlassian/jira/7/7.6.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.2/Makefile b/atlassian/jira/7/7.6.2/Makefile deleted file mode 100644 index d4e074a42..000000000 --- a/atlassian/jira/7/7.6.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.2 . diff --git a/atlassian/jira/7/7.6.2/README.md b/atlassian/jira/7/7.6.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.2/entrypoint.sh b/atlassian/jira/7/7.6.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.3/.docker-repository.yml b/atlassian/jira/7/7.6.3/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.3/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.3/.dockerignore b/atlassian/jira/7/7.6.3/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.3/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.3/Dockerfile b/atlassian/jira/7/7.6.3/Dockerfile deleted file mode 100644 index b106ce402..000000000 --- a/atlassian/jira/7/7.6.3/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.3 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.3/Makefile b/atlassian/jira/7/7.6.3/Makefile deleted file mode 100644 index 7a8c98ffb..000000000 --- a/atlassian/jira/7/7.6.3/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.3 . diff --git a/atlassian/jira/7/7.6.3/README.md b/atlassian/jira/7/7.6.3/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.3/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.3/entrypoint.sh b/atlassian/jira/7/7.6.3/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.3/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.4/.docker-repository.yml b/atlassian/jira/7/7.6.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.4/.dockerignore b/atlassian/jira/7/7.6.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.4/Dockerfile b/atlassian/jira/7/7.6.4/Dockerfile deleted file mode 100644 index 66aa5c5f3..000000000 --- a/atlassian/jira/7/7.6.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.4/Makefile b/atlassian/jira/7/7.6.4/Makefile deleted file mode 100644 index 6396d95c3..000000000 --- a/atlassian/jira/7/7.6.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.4 . diff --git a/atlassian/jira/7/7.6.4/README.md b/atlassian/jira/7/7.6.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.4/entrypoint.sh b/atlassian/jira/7/7.6.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.6/.docker-repository.yml b/atlassian/jira/7/7.6.6/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.6/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.6/.dockerignore b/atlassian/jira/7/7.6.6/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.6/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.6/Dockerfile b/atlassian/jira/7/7.6.6/Dockerfile deleted file mode 100644 index 2041a4e0e..000000000 --- a/atlassian/jira/7/7.6.6/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.6 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.6/Makefile b/atlassian/jira/7/7.6.6/Makefile deleted file mode 100644 index 258c78519..000000000 --- a/atlassian/jira/7/7.6.6/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.6 . diff --git a/atlassian/jira/7/7.6.6/README.md b/atlassian/jira/7/7.6.6/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.6/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.6/entrypoint.sh b/atlassian/jira/7/7.6.6/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.6/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.7/.docker-repository.yml b/atlassian/jira/7/7.6.7/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.7/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.7/.dockerignore b/atlassian/jira/7/7.6.7/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.7/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.7/Dockerfile b/atlassian/jira/7/7.6.7/Dockerfile deleted file mode 100644 index 93e9070b7..000000000 --- a/atlassian/jira/7/7.6.7/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.7 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.7/Makefile b/atlassian/jira/7/7.6.7/Makefile deleted file mode 100644 index b6dfcfec1..000000000 --- a/atlassian/jira/7/7.6.7/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.7 . diff --git a/atlassian/jira/7/7.6.7/README.md b/atlassian/jira/7/7.6.7/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.7/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.7/entrypoint.sh b/atlassian/jira/7/7.6.7/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.7/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.8/.docker-repository.yml b/atlassian/jira/7/7.6.8/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.8/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.8/.dockerignore b/atlassian/jira/7/7.6.8/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.8/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.8/Dockerfile b/atlassian/jira/7/7.6.8/Dockerfile deleted file mode 100644 index f7ec54037..000000000 --- a/atlassian/jira/7/7.6.8/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.8 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.8/Makefile b/atlassian/jira/7/7.6.8/Makefile deleted file mode 100644 index d4dbf81e3..000000000 --- a/atlassian/jira/7/7.6.8/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.8 . diff --git a/atlassian/jira/7/7.6.8/README.md b/atlassian/jira/7/7.6.8/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.8/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.8/entrypoint.sh b/atlassian/jira/7/7.6.8/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.8/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.6.9/.docker-repository.yml b/atlassian/jira/7/7.6.9/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.6.9/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.6.9/.dockerignore b/atlassian/jira/7/7.6.9/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.6.9/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.6.9/Dockerfile b/atlassian/jira/7/7.6.9/Dockerfile deleted file mode 100644 index c838cc1c5..000000000 --- a/atlassian/jira/7/7.6.9/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.6.9 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.6.9/Makefile b/atlassian/jira/7/7.6.9/Makefile deleted file mode 100644 index 4d1b321ab..000000000 --- a/atlassian/jira/7/7.6.9/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.6.9 . diff --git a/atlassian/jira/7/7.6.9/README.md b/atlassian/jira/7/7.6.9/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.6.9/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.6.9/entrypoint.sh b/atlassian/jira/7/7.6.9/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.6.9/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.7.0/.docker-repository.yml b/atlassian/jira/7/7.7.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.7.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.7.0/.dockerignore b/atlassian/jira/7/7.7.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.7.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.7.0/Dockerfile b/atlassian/jira/7/7.7.0/Dockerfile deleted file mode 100644 index c28dc53fb..000000000 --- a/atlassian/jira/7/7.7.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.7.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.7.0/Makefile b/atlassian/jira/7/7.7.0/Makefile deleted file mode 100644 index 484b63ebe..000000000 --- a/atlassian/jira/7/7.7.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.7.0 . diff --git a/atlassian/jira/7/7.7.0/README.md b/atlassian/jira/7/7.7.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.7.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.7.0/entrypoint.sh b/atlassian/jira/7/7.7.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.7.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.7.1/.docker-repository.yml b/atlassian/jira/7/7.7.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.7.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.7.1/.dockerignore b/atlassian/jira/7/7.7.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.7.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.7.1/Dockerfile b/atlassian/jira/7/7.7.1/Dockerfile deleted file mode 100644 index 7feb33a0b..000000000 --- a/atlassian/jira/7/7.7.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.7.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.7.1/Makefile b/atlassian/jira/7/7.7.1/Makefile deleted file mode 100644 index f585f6150..000000000 --- a/atlassian/jira/7/7.7.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.7.1 . diff --git a/atlassian/jira/7/7.7.1/README.md b/atlassian/jira/7/7.7.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.7.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.7.1/entrypoint.sh b/atlassian/jira/7/7.7.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.7.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.7.2/.docker-repository.yml b/atlassian/jira/7/7.7.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.7.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.7.2/.dockerignore b/atlassian/jira/7/7.7.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.7.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.7.2/Dockerfile b/atlassian/jira/7/7.7.2/Dockerfile deleted file mode 100644 index 5a5c5d671..000000000 --- a/atlassian/jira/7/7.7.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.7.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.7.2/Makefile b/atlassian/jira/7/7.7.2/Makefile deleted file mode 100644 index 33f32889d..000000000 --- a/atlassian/jira/7/7.7.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.7.2 . diff --git a/atlassian/jira/7/7.7.2/README.md b/atlassian/jira/7/7.7.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.7.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.7.2/entrypoint.sh b/atlassian/jira/7/7.7.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.7.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.7.4/.docker-repository.yml b/atlassian/jira/7/7.7.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.7.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.7.4/.dockerignore b/atlassian/jira/7/7.7.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.7.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.7.4/Dockerfile b/atlassian/jira/7/7.7.4/Dockerfile deleted file mode 100644 index 79346f86c..000000000 --- a/atlassian/jira/7/7.7.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.7.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.7.4/Makefile b/atlassian/jira/7/7.7.4/Makefile deleted file mode 100644 index ec7c511d6..000000000 --- a/atlassian/jira/7/7.7.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.7.4 . diff --git a/atlassian/jira/7/7.7.4/README.md b/atlassian/jira/7/7.7.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.7.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.7.4/entrypoint.sh b/atlassian/jira/7/7.7.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.7.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.8.0/.docker-repository.yml b/atlassian/jira/7/7.8.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.8.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.8.0/.dockerignore b/atlassian/jira/7/7.8.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.8.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.8.0/Dockerfile b/atlassian/jira/7/7.8.0/Dockerfile deleted file mode 100644 index 02bca0b8f..000000000 --- a/atlassian/jira/7/7.8.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.8.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.8.0/Makefile b/atlassian/jira/7/7.8.0/Makefile deleted file mode 100644 index a8c1c3708..000000000 --- a/atlassian/jira/7/7.8.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.8.0 . diff --git a/atlassian/jira/7/7.8.0/README.md b/atlassian/jira/7/7.8.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.8.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.8.0/entrypoint.sh b/atlassian/jira/7/7.8.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.8.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.8.1/.docker-repository.yml b/atlassian/jira/7/7.8.1/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.8.1/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.8.1/.dockerignore b/atlassian/jira/7/7.8.1/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.8.1/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.8.1/Dockerfile b/atlassian/jira/7/7.8.1/Dockerfile deleted file mode 100644 index 598aca639..000000000 --- a/atlassian/jira/7/7.8.1/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.8.1 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.8.1/Makefile b/atlassian/jira/7/7.8.1/Makefile deleted file mode 100644 index 15a553644..000000000 --- a/atlassian/jira/7/7.8.1/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.8.1 . diff --git a/atlassian/jira/7/7.8.1/README.md b/atlassian/jira/7/7.8.1/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.8.1/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.8.1/entrypoint.sh b/atlassian/jira/7/7.8.1/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.8.1/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.8.2/.docker-repository.yml b/atlassian/jira/7/7.8.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.8.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.8.2/.dockerignore b/atlassian/jira/7/7.8.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.8.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.8.2/Dockerfile b/atlassian/jira/7/7.8.2/Dockerfile deleted file mode 100644 index 9e8fb7dc4..000000000 --- a/atlassian/jira/7/7.8.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.8.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.8.2/Makefile b/atlassian/jira/7/7.8.2/Makefile deleted file mode 100644 index 7d73c3eaf..000000000 --- a/atlassian/jira/7/7.8.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.8.2 . diff --git a/atlassian/jira/7/7.8.2/README.md b/atlassian/jira/7/7.8.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.8.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.8.2/entrypoint.sh b/atlassian/jira/7/7.8.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.8.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.8.4/.docker-repository.yml b/atlassian/jira/7/7.8.4/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.8.4/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.8.4/.dockerignore b/atlassian/jira/7/7.8.4/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.8.4/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.8.4/Dockerfile b/atlassian/jira/7/7.8.4/Dockerfile deleted file mode 100644 index 06cc20d95..000000000 --- a/atlassian/jira/7/7.8.4/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.8.4 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.8.4/Makefile b/atlassian/jira/7/7.8.4/Makefile deleted file mode 100644 index 13d159ddc..000000000 --- a/atlassian/jira/7/7.8.4/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.8.4 . diff --git a/atlassian/jira/7/7.8.4/README.md b/atlassian/jira/7/7.8.4/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.8.4/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.8.4/entrypoint.sh b/atlassian/jira/7/7.8.4/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.8.4/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.9.0/.docker-repository.yml b/atlassian/jira/7/7.9.0/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.9.0/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.9.0/.dockerignore b/atlassian/jira/7/7.9.0/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.9.0/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.9.0/Dockerfile b/atlassian/jira/7/7.9.0/Dockerfile deleted file mode 100644 index 3fcc0c8f1..000000000 --- a/atlassian/jira/7/7.9.0/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.9.0 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.9.0/Makefile b/atlassian/jira/7/7.9.0/Makefile deleted file mode 100644 index 083bd154b..000000000 --- a/atlassian/jira/7/7.9.0/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.9.0 . diff --git a/atlassian/jira/7/7.9.0/README.md b/atlassian/jira/7/7.9.0/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.9.0/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.9.0/entrypoint.sh b/atlassian/jira/7/7.9.0/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.9.0/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi diff --git a/atlassian/jira/7/7.9.2/.docker-repository.yml b/atlassian/jira/7/7.9.2/.docker-repository.yml deleted file mode 100644 index 8dc515604..000000000 --- a/atlassian/jira/7/7.9.2/.docker-repository.yml +++ /dev/null @@ -1 +0,0 @@ -repository: epicmorg/jira diff --git a/atlassian/jira/7/7.9.2/.dockerignore b/atlassian/jira/7/7.9.2/.dockerignore deleted file mode 100644 index 99176b278..000000000 --- a/atlassian/jira/7/7.9.2/.dockerignore +++ /dev/null @@ -1,3 +0,0 @@ -.git -scripts -.idea \ No newline at end of file diff --git a/atlassian/jira/7/7.9.2/Dockerfile b/atlassian/jira/7/7.9.2/Dockerfile deleted file mode 100644 index ea4dd675b..000000000 --- a/atlassian/jira/7/7.9.2/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -FROM epicmorg/prod:jdk8 -LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" -ARG DEBIAN_FRONTEND=noninteractive - -################################################################## -# ARGuments -################################################################## -ARG JIRA_VERSION=7.9.2 -ARG DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${JIRA_VERSION}.tar.gz - -################################################################## -# Setup -################################################################## -ENV RUN_USER daemon -ENV RUN_GROUP daemon - -# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files -ENV JIRA_HOME /var/atlassian/application-data/jira -ENV JIRA_INSTALL_DIR /opt/atlassian/jira - -VOLUME ["${JIRA_HOME}"] -WORKDIR $JIRA_HOME - -# Expose HTTP port -EXPOSE 8080 - -################################################################## -# Installing -################################################################## -RUN mkdir -p ${JIRA_INSTALL_DIR} \ - && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ - && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ - && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ - && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ - && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ - - update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ - apt clean -y && \ - apt autoclean -y && \ - rm -rfv /var/lib/apt/lists/* && \ - rm -rfv /var/cache/apt/archives/*.deb - -CMD ["/entrypoint.sh", "-fg"] -ENTRYPOINT ["/usr/bin/tini", "--"] -COPY entrypoint.sh /entrypoint.sh -COPY . /tmp diff --git a/atlassian/jira/7/7.9.2/Makefile b/atlassian/jira/7/7.9.2/Makefile deleted file mode 100644 index d16c74d5f..000000000 --- a/atlassian/jira/7/7.9.2/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -all: jr - -jr: - docker build --compress -t epicmorg/jira:7.9.2 . diff --git a/atlassian/jira/7/7.9.2/README.md b/atlassian/jira/7/7.9.2/README.md deleted file mode 100644 index 4cab96ead..000000000 --- a/atlassian/jira/7/7.9.2/README.md +++ /dev/null @@ -1,151 +0,0 @@ -![Atlassian JIRA](https://www.atlassian.com/dam/wac/legacy/jira_logo_landing.png) - -JIRA Software is a software development tool used by agile teams. - -Learn more about JIRA Software: - -# Overview - -This Docker container makes it easy to get an instance of JIRA Software up and running. - -# Quick Start - -For the `JIRA_HOME` directory that is used to store application data (amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. - -To get started you can use a data volume, or named volumes. In this example we'll use named volumes. - - $> docker volume create --name jiraVolume - $> docker run -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - - -**Success**. JIRA is now available on [http://localhost:8080](http://localhost:8080)* - -Please ensure your container has the necessary resources allocated to it. We recommend 2GiB of memory allocated to accommodate the application server. See [System Requirements](https://confluence.atlassian.com/adminjiraserver071/jira-applications-installation-requirements-802592164.html) for further information. - - -_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):8080` instead._ - -## Memory / Heap Size - -If you need to override JIRA's default memory allocation, you can control the minimum heap (Xms) and maximum heap (Xmx) via the below environment variables. - -* `JVM_MINIMUM_MEMORY` (default: 384m) - - The minimum heap size of the JVM - -* `JVM_MAXIMUM_MEMORY` (default: 768m) - - The maximum heap size of the JVM - -## Reverse Proxy Settings - -If JIRA is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/adminjiraserver072/integrating-jira-with-apache-using-ssl-828788158.html), then you need to specify extra options to make JIRA aware of the setup. They can be controlled via the below environment variables. - -* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) - - The reverse proxy's fully qualified hostname. - -* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) - - The reverse proxy's port number via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SCHEME` (default: http) - - The protocol via which JIRA is accessed. - -* `CATALINA_CONNECTOR_SECURE` (default: false) - - Set 'true' if CATALINA_CONNECTOR_SCHEME is 'https'. - -## JVM configuration - -If you need to pass additional JVM arguments to JIRA, such as specifying a custom trust store, you can add them via the below environment variable - -* `JVM_SUPPORT_RECOMMENDED_ARGS` - - Additional JVM arguments for JIRA - -Example: - - $> docker run -e JVM_SUPPORT_RECOMMENDED_ARGS=-Djavax.net.ssl.trustStore=/var/atlassian/application-data/jira/cacerts -v jiraVolume:/var/atlassian/application-data/jira --name="jira" -d -p 8080:8080 epicmorg/jira - -## Data Center configuration - -This docker image can be run as part of a [Data Center](https://confluence.atlassian.com/enterprise/jira-data-center-472219731.html) cluster. You can specify the following properties to start Jira as a Data Center node, instead of manually configuring a cluster.properties file, See [Installing Jira Data Center](https://confluence.atlassian.com/adminjiraserver071/installing-jira-data-center-802592197.html) for more information on each property and its possible configuration. - -* `CLUSTERED` (default: false) - - Set 'true' to enable clustering configuration to be used. This will create a **cluster.properties** file inside the container's `$JIRA_HOME` directory. - -* `JIRA_NODE_ID` (default: jira_node_) - - The unique ID for the node. By default, this will include the first eight characters of the Docker container ID, but can be overridden with a custom value. - -* `JIRA_SHARED_HOME` (default: $JIRA_HOME/shared) - - The location of the shared home directory for all Jira nodes. - -* `EHCACHE_PEER_DISCOVERY` (default: default) - - Describes how nodes find each other. - -* `EHCACHE_LISTENER_HOSTNAME` (default: NONE) - - The hostname of the current node for cache communication. Jira Data Center will resolve this this internally if the parameter isn't set. - -* `EHCACHE_LISTENER_PORT` (default: 40001) - - The port the node is going to be listening to. - -* `EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS` (default: 2000) - - The default timeout for the Ehcache listener. - -* `EHCACHE_MULTICAST_ADDRESS` (default: NONE) - - A valid multicast group address. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_PORT` (default: NONE) - - The dedicated port for the multicast heartbeat traffic.Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_TIMETOLIVE` (default: NONE) - - A value between 0 and 255 which determines how far the packets will propagate. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -* `EHCACHE_MULTICAST_HOSTNAME` (default: NONE) - - The hostname or IP of the interface to be used for sending and receiving multicast packets. Required when EHCACHE_PEER_DISCOVERY is set to 'automatic' insted of 'default'. - -# Upgrade - -To upgrade to a more recent version of JIRA you can simply stop the `jira` container and start a new one based on a more recent image: - - $> docker stop jira - $> docker rm jira - $> docker run ... (See above) - -As your data is stored in the data volume directory on the host it will still be available after the upgrade. - -_Note: Please make sure that you **don't** accidentally remove the `jira` container and its volumes using the `-v` option._ - -# Backup - -For evaluations you can use the built-in database that will store its files in the JIRA home directory. In that case it is sufficient to create a backup archive of the docker volume. - -If you're using an external database, you can configure JIRA to make a backup automatically each night. This will back up the current state, including the database to the `jiraVolume` docker volume, which can then be archived. Alternatively you can backup the database separately, and continue to create a backup archive of the docker volume to back up the JIRA Home directory. - -Read more about data recovery and backups: [https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html](https://confluence.atlassian.com/adminjiraserver071/backing-up-data-802592964.html) - -# Versioning - -The `latest` tag matches the most recent release of Atlassian JIRA Software. Thus `epicmorg/jira:latest` will use the newest version of JIRA available. - -## Versions available - -* `epicmorg/jira:latest` -* `epicmorg/jira:7.10.0` - -# Support - -This Docker container is unsupported and is intended for illustration purposes only. diff --git a/atlassian/jira/7/7.9.2/entrypoint.sh b/atlassian/jira/7/7.9.2/entrypoint.sh deleted file mode 100755 index 50ee4ecd1..000000000 --- a/atlassian/jira/7/7.9.2/entrypoint.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -euo pipefail - -export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") -export JRE_HOME="$JAVA_HOME/jre" -export JAVA_BINARY="$JRE_HOME/bin/java" -export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') - -# Setup Catalina Opts -: ${CATALINA_CONNECTOR_PROXYNAME:=} -: ${CATALINA_CONNECTOR_PROXYPORT:=} -: ${CATALINA_CONNECTOR_SCHEME:=http} -: ${CATALINA_CONNECTOR_SECURE:=false} - -: ${CATALINA_OPTS:=} - -: ${JAVA_OPTS:=} - -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" -CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" - -export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" - -# Setup Data Center configuration -if [ ! -f "/etc/container_id" ]; then - uuidgen > /etc/container_id -fi -CONTAINER_ID=$(cat /etc/container_id) -CONTAINER_SHORT_ID=${CONTAINER_ID::8} - -: ${CLUSTERED:=false} -: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} -: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} -: ${EHCACHE_PEER_DISCOVERY:=} -: ${EHCACHE_LISTENER_HOSTNAME:=} -: ${EHCACHE_LISTENER_PORT:=} -: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} -: ${EHCACHE_MULTICAST_ADDRESS:=} -: ${EHCACHE_MULTICAST_PORT:=} -: ${EHCACHE_MULTICAST_TIMETOLIVE:=} -: ${EHCACHE_MULTICAST_HOSTNAME:=} - -# Cleanly set/unset values in cluster.properties -function set_cluster_property { - if [ -z $2 ]; then - if [ -f "${JIRA_HOME}/cluster.properties" ]; then - sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" - fi - return - fi - if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then - sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" - else - echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" - fi -} - -if [ "${CLUSTERED}" == "true" ]; then - set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" - set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" - set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" - set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" - set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" - set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" - set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" - set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" - set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" -fi - - -# Start Jira as the correct user -if [ "${UID}" -eq 0 ]; then - echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" - PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") - EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 - if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then - chmod -R 700 "${JIRA_HOME}" && - chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" - fi - # Now drop privileges - exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" -else - exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" -fi