Jira Software is software development tracking application. It is available as
- Jira Cloud, a managed hosted deployment
- Jira Server, a self-managed solution.
Installing Jira Server using docker
Determine the docker image tag
Jira Software can be downloaded from their site and installed manually. Check the current Long Term Support (LTS) version which should be more stable than the latest release.
Corresponding docker images are published to Docker hub at atlassian/jira-software.
I couldn’t find a tag for the latest LTS version, instead use a specific tag, e.g. 8.5.5
.
To determine the specific Jira Software version in an image, look for a file in the image matching
/opt/atlassian/jira/atlassian-jira/WEB-INF/application-installation/jira-software-application/jira-software-application-*.jar
The *
will contain the version number. This is useful if using a generic tag such as 8
or latest
.
Pull the docker image
docker pull atlassian/jira-software:8.5.5
Create a docker volume for Jira data
A docker volume stores data. It is independent of the container so will remain when the image is upgraded.
docker volume create --name jiraVolume
Jira will store data such as attachments here.
Jira Database
A separate database should also be started along with Jira. It is safer than the default in memory H2 database.
See [postgres docker install]({{ ref “/kb/db/postgres/docker_install.md” }}) for installing a postgres database.
Assume there is now postgreSQL instance up and running with the following details:
- host:
10.10.10.10
- port:
5432
- user:
jira
- password:
jira-db-secret
Run the container
docker container run --name jira -p 8080:8080 \
-v jiraVolume:/var/atlassian/application-data/jira \
-e ATL_DB_DRIVER=org.postgresql.Driver \
-e ATL_DB_TYPE=postgres72 \
-e ATL_JDBC_URL=jdbc:postgresql://10.10.10.10:5432/jira \
-e ATL_JDBC_USER=jira \
-e ATL_JDBC_PASSWORD=jira-db-secret \
atlassian/jira-software:8.5.5
jiraVolume
is mounted to the data directory at/var/atlassian/application-data/jira
ATL_DB_TYPE
should be set topostgres72
, even if you are using a later postgres version.
The application is now available at port 8080 of the docker host, e.g. http://localhost:8080/
A license key must be installed as part of the installation process, follow the instructions in the browser.
Debugging
To look around the running container
docker exec -it jira bash
To see logs
docker logs jira
SSL Terminated reverse proxy
If required, configure the Tomcat connector to accept connections from a SSL terminated reverse proxy.
Add more environment variables to the container
-e ATL_TOMCAT_SCHEME=https \
-e ATL_TOMCAT_SECURE=true \
-e ATL_PROXY_PORT=443 \
-e ATL_PROXY_NAME=jira.example.com
References
- Jira software
- atlassian/jira-software at docker hub
- Supported platform versions lists supported operating systems and database versions for a given Jira Software version.
- Jira and postgres configuration
- Backing up Jira data
- SSL Termination