Confluence is a Wiki system comparable with MediaWiki. In companies it is used for documentation purposes and as an information hub. It is basically a commercial software and Atlassian is the company behind it. It is possible to have a free installation with some limitations or to buy a license to have an instance with full features. Confluence is proprietary software written in Java.
The data store which holds basically the majority of the web content of Confluence is in our case MySQL. MySQL is available in the Ubuntu repositories.
Please notice that a productive installation needs to have a good planning. I provide here a good first impression on how to do a successful setup of a test instance of Confluence.
1. Install Software
On Ubuntu the prerequisite to have Confluence finally up an running is to have these packages installed by Terminal/Shell:
sudo apt-get --yes install mysql-server
2. Create a MySQL Database
After we have installed the MySQL Ubuntu package we need to create a database and an user and grant access to the user with the MySQL Command Line Interface (CLI). First log in with empty password:
sudo mysql -u root -p
Then create a database with the name “confluence”:
mysql> CREATE DATABASE confluence;
The next command creates a user called “confluence” with the password “secpasswd”. And the user gains access to the database:
mysql> GRANT ALL PRIVILEGES ON confluence.* TO confluence@localhost IDENTIFIED BY 'secpasswd';
Exit the MySQL CLI:
mysql> FLUSH PRIVILEGES; mysql> quit
After this stay in the Terminal/Shell and run this command:
sudo echo transaction-isolation=READ-COMMITTED >>/etc/mysql/mysql.conf.d/mysqld.cnf
This step is required. If not done the installation will fail later on.
3. Download Confluence
To download Confluence run in a Terminal/Shell:
wget https://product-downloads.atlassian.com/software/confluence/downloads/atlassian-confluence-7.20.1-x64.bin -O /tmp/atlassian-confluence-7.20.1-x64.bin
Now is is necessary to set the right permissions to the downloaded file to make it executable:
chmod a+x /tmp/atlassian-confluence-7.20.1-x64.bin
4. Start the Installation
To start the installation procedure run in a Terminal/Shell:
Fontconfig and Jave Runtime Environment (JRE) are configured. The next steps are summarized on a screenshot. The configurations are red marked:
We did an “Express Install” and Confluence is now accessible by an internet browser and the address “http://localhost:8090”. The installation continues now by browser.
I recommend for testing purposes to choose:
A link is provided to Atlassian.com to register for a trail license. This can be done easily with a Google Account. After setting the trail license choose:
Non-clustered (single node)
Next it’s about the database settings. Use “MySQL”, open a Terminal/Shell and do the following:
wget https://cdn.mysql.com/archives/mysql-connector-java-5.1/mysql-connector-java-5.1.49.zip -O /tmp/mysql-connector-java-5.1.49.zip unzip /tmp/mysql-connector-java-5.1.49.zip -d /tmp sudo cp /tmp/mysql-connector-java-5.1.49/mysql-connector-java-5.1.49-bin.jar /opt/atlassian/confluence/confluence/WEB-INF/lib sudo service confluence restart
Refresh the browser and continue with “MySQL” and insert the following data into the appropriate fields:
Setup type: "simple" Hostname: “localhost” Port: "3306" User: “confluence” Database name: “confluence” Password: “secpasswd” Click on “Next”
On the “Load Content” Page, let’s set up an “Example Site”.
On the “Configure User Management” page I selected “Manage users and groups within Confluence. I set on the “Configure System Administrator Account” my username, email and password. Then I got “Setup Successful” and clicked to “Start”.
The setup can be very tricky but finally we got a good first impression and a solid test environment. Maybe several health check messages are popping up and some optimizations need to be done. Since Confluence is not completely free, MediaWiki or XWiki could be an alternative. As I wrote above a free license with several restrictions is offered by Atlassian.