Following up on our previous article, which covered How to Install JIRA on an ARM Server, we’ll now take a look at how to install Atlassian Confluence on an ARM Server as well.
As mentioned in our previous article, when we set out to use Confluence and JIRA for some development work, we noticed there was a lack of information on the topic and no real authoritative guide on how to install and run Confluence or JIRA on ARM platforms. So, we decided to piece together what we learned in the hopes that it will help someone else.
As Confluence is architecturally similar to JIRA, much of the documentation from our prior article is replicated here with just a few minor edits, but we will go through the entire exercise anyways for the sake of clarity.
First, lets discuss the specific environment this guide addresses. This tutorial is for installing Confluence on Ubuntu 14.04 LTS running on ARM architecture processors. It may also work on similar Linux distros such as Raspbian for the Raspberry Pi, Debian, etc, but we only tested and built on Ubuntu Server 14.04 LTS, so your mileage may vary on the others.
Before we get in to the details, here is a quick overview of what we will accomplish in this guide:
1. Add Oracle Java repository
2. Install Oracle Java SDK
3. Download and configure Confluence
4. Run Confluence!
Let’s get started.
First, we need to ensure we have a few software utilities installed that will help us add some software repositories in the next step.
sudo apt-get install python-software-properties software-properties-common
This is going to give us access to the ‘add-apt-repository’ command, which we’ll make use of now:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
This will pull in a new repository that contains the Oracle Java SDK. We need to use the Oracle Java runtime environment, as opposed to the OpenJDK packages that are in the default Ubuntu repos.
sudo apt-get install oracle-java7-installer
The JAVA_HOME variable should be set for you during installation, but just to be certain we are going to install one more utility, which will allow us to also choose which Java to run if more than one are present on your system.
sudo apt-get install oracle-java7-set-default
Once it finishes installing, we run it with:
sudo update-alternatives --config java
And then choose your Oracle Java installation from the numerical options. It will look similar to this:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
* 0 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 manual mode
Press enter to keep the current choice[*], or type selection number:
Select the one that references your new Oracle Java installation, if it is not already selected.
Once complete, you can test everything is working by running:
It should give you back information on the installed Java version, and should be similar to this:
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) Client VM (build 24.60-b09, mixed mode)
Now that Java is installed and configured, it is time to download and setup Confluence. Atlassian only provides a binary for installing Confluence on 32-bit and 64-bit x86 platforms, so we cannot use their automated installation scripts. To run Confluence on ARM, we need to use the Archive File option provided by Atlassian. Further reading on the topic can be found here: Installing Confluence on Linux from Archive File (https://confluence.atlassian.com/display/DOC/Installing+Confluence+on+Linux+from+Archive+File). To download the archive, go to https://www.atlassian.com/software/confluence/download and click on Linux. You will see one labeled “Confluence 5.7.3 Server – Standalone (TAR.GZ Archive)” We can see that it is a link to https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-5.7.3.tar.gz (at the time of this writing). That is the file we are interested in.
On your server, navigate to the folder you want to download this file to, and then start the download.
sudo wget https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-5.7.3.tar.gz
Once the download has finished, we need to extract it.
sudo tar -xvzf atlassian-confluence-5.7.3.tar.gz
This will extract the contents of the archive in to a subdirectory. Next, we are going to need to declare a path for the variable ‘confluence.home’, so lets first make a directory to point the variable at.
sudo mkdir /var/confluence
Now we can set the property in the ‘atlassian-confluence-5.7.3/WEB-INF/classes/confluence-init.properties’ file.
sudo nano atlassian-confluence-5.7.3/WEB-INF/classes/confluence-init.properties
Uncomment the line to define ‘confluence.home’ and add /var/confluence/ Save and exit.
At this point, Confluence has what it needs and is able to run, so we can start it with:
Confluence can take up to 10 minutes or more to start, depending on your ARM processor’s core and speed, as well as your filesystem location and speed. Once it’s fully loaded and operational, you can access Confluence by browsing to http://your-ip-address:8080 and going through the steps to finalize setup.
Remember, installing Confluence like this was only tested on an Ubuntu 14.04 LTS ARM Server, but these steps should be roughly the same for installing Confluence on a Raspberry Pi running Raspian, or a Debian ARM server.