docker run -d -p 8080:8080 ahaasler/jira
You can use this parameters to configure your jira instance:
https
as connector scheme.This parameters should be given to the entrypoint (passing them after the image):
docker run -d -p 8080:8080 ahaasler/jira <parameters>
If you want to execute another command instead of launching jira you should overwrite the entrypoint with
--entrypoint <command>
(docker run parameter).
Lets say you have the following nginx configuration for jira:
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name example.com;
ssl on;
ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/key.key;
location /jira {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
}
}
This is only an example, please secure you nginx better.
For that configuration you should run your jira container with:
docker run -d -p 8080:8080 ahaasler/jira -s -n example.com -p 443 -c jira
The jira home is set to /data/jira
. If you want to persist your data you should use a data volume for /data/jira
.
docker run -d -p 8080:8080 -v /home/user/jira-data:/data/jira ahaasler/jira
Make sure that the jira user (with id 547) has read/write/execute permissions.
If security is important follow the Atlassian recommendation:
Ensure that only the user running Jira can access the Jira home directory, and that this user has read, write and execute permissions, by setting file system permissions appropriately for your operating system.
Create the data-only container and set proper permissions:
Lazy way (preferred) - Using docker-jira-data:
docker run --name jira-data ahaasler/jira-data
I-wan't-to-know-what-I'm-doing way:
docker run --name jira-data -v /data/jira busybox true
docker run --rm -it --volumes-from jira-data debian bash
The last command will open a debian container. Execute this inside that container:
chown 547:root /data/jira; chmod 770 /data/jira; exit;
Use it in the jira container:
docker run --name jira --volumes-from jira-data -d -p 8080:8080 ahaasler/jira
A great way to connect your Jira instance with a PostgreSQL database is using the docker-jira-postgres image.
Create and name the database container:
docker run --name jira-postgres -d ahaasler/jira-postgres
Use it in the Jira container:
docker run --name jira --link jira-postgres:jira-postgres -d -p 8080:8080 ahaasler/jira
Connect your Jira instance following the Atlassian documentation: Configure your JIRA server to connect to your PostgreSQL database.
See docker-jira-postgres for more information and configuration options.
This image is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.