How to Install and Manage Self-Hosted Jira

0
444

Jira is an issue-tracking application from Atlassian that makes it easier for teams to collaborate on software. It’s not open-source, but you can install it on your own servers rather than using the cloud version. Here’s how to set that up.

Why Self-Host?

There’s a lot of benefit to cloud applications—they’re generally very reliable, as they can benefit from the redundancy of a running at a datacenter scale. They’re also easier to use, as all the setup is handled for you.

However, depending on how many users you have, self-hosted Jira can be cheaper in the long run. If you only have less than 100 users, Jira cloud will cost $7 per user. When billed annually, it comes out to $7,000 per year. Compared to the self-hosted “Jira Server,” which is a one-time payment of $13,300. If you’re planning on using Jira for more than two years, you’ll be paying no license fees after the first two years. This holds true at every tier.

The exception is the free tiers: If you have less than 10 users, Jira Cloud is entirely free, while Jira Server costs just $10 for a lifetime license for up to 10 users. It’s technically a paid license, although it’s a very small fee in comparison to the other tiers.

Of course, larger corporations will probably want to run the self-hosted “Jira Data Center” version, which comes with SAML 2.0 support, active clustering, and easy deployment to AWS. Unlike Jira Server, this is an annual fee, but it’s still cheaper than Jira Cloud. For 500 users, Jira cloud costs $28,000 per year, while Jira Data Center costs $20,000. For 1,000 users and above, Jira Data Center is consistently half the price.

While it is cheaper, the license fee savings you get from hosting it yourself will be offset by the cost of running and maintaining the server (or servers) that you host Jira on. This cost will vary depending on your usage, but with how high the license fees are, it’s probably fairly negligible for the server itself. Plus, self-hosted Jira can connect directly to your existing database server, which can cut down on the hosting costs.

Cost isn’t the only factor though—many businesses simply prefer to host their applications on-premises, as hosting it yourself gives you full control over everything. If you want to put Jira behind your corporate firewall and lock out access to anyone who isn’t on your private subnet, you can do that.

How to Install Jira on Linux

Installation is fairly straightforward. First off, you’ll need to download the latest installer from Jira’s website. They make it a bit cumbersome to grab the actual link for curl‘ing; you’ll have to select “Linux 64 Bit” as the installation type, agree to their license and privacy policy (after reading the whole thing, of course), then right-click on the “Submit” button and choose “Copy Link Address.” This will copy a direct link the the .bin installer. Otherwise, clicking “Submit” will download the file directly to your personal computer, which is probably not what you want.

Head over to the server you plan on using to host everything. Download this file with curl:

curl https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-8.6.0-x64.bin

Make it executable:

chmod a+x atlassian-jira-software-8.5.1-x64.bin

And run it with sudo:

sudo ./atlassian-jira-software-8.5.1-x64.bin

Running as root will install Jira as a service, which is a lot easier to manage.

You have a few options regarding installation. The easiest method is “Express Install,” which will keep the default settings and install as normal. Custom install will let you tweak these settings, and “Upgrade An Existing JIRA Installation” will simply perform an update to your server.

For custom install, you’ll be asked to choose the folder where Jira will be installed, and the location for Jira’s data. Most importantly, you can change the port that Jira runs on, if you’ve got another service occupying port 8080.

You’ll want to make sure that you install Jira as a service, which will run at startup automatically.

Installation will take a few minutes, and installs everything on your server. Once it’s done, Jira will be available on port 8080 of your server.

If you’d like to get it on a subdomain, you can put nginx in front and proxy_pass with the following configuration:

server {

server_name jira.example.com;

location / {

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://localhost:8080;
client_max_body_size 10M;
}

listen [::]:80;
listen 80;
}

You’ll likely want to run certbot or manually install your SSL certificates so you can connect securely as well.

Head over to the endpoint to complete the setup. You can either choose to do a quick setup for evaluation, or set it up manually.

If you’re setting up manually, you’ll need to connect to a database. You can use the built-in database, or connect to your own  database. This doesn’t have to be on the same server as Jira, so you can use your existing DB servers for this.

Once it connects, you’ll have to configure the base URL to match whatever you’re hosting Jira on, so it can format links correctly.

After that, you’ll need to enter in your license key associated with your MyAtlassian account. You can generate a 30-day trial license from the link below. If you’re setting up for less than 10 users, you’ll have to pay the $10 license fee.

From here, you can set up your user accounts, and begin using Jira as you usually would.