Installing JIRA on Debian or Ubuntu

These are some rough notes for getting JIRA installed in a Debian-friendly way, using the 'tomcat5.5' package, and copying files to FHS-approved places. Hopefully one day it will form the basis for a JIRA .deb.

Work in progress
The safe, recommended, straightforward way of getting JIRA working is still to install JIRA Standalone in /usr/local/. Using The prepackaged Tomcat described here has not been tested. It appears to work, but may well be broken in subtle w

Install and configure the Sun JDK

Run sudo apt-get install sun-java6-jdk. This will install the Sun JDK.
Run sudo update-alternatives --config java, and make the java-6-sun version the default. Without this, Debian uses its built-in half-broken GCJ implementation.

Install Tomcat

sudo apt-get install tomcat5.5

Configure Tomcat

Edit /etc/default/tomcat5.5, and set:

  • JAVA_HOME=/usr/lib/jvm/java-6-sun
  • TOMCAT5_SECURITY=no

(this tells Tomcat to use the Sun JDK, and disables the security manager (we don't yet have a policy file written for JIRA - contributions welcome!)

Build the JIRA webapp

Download the JIRA WAR/Webapp edition. Unzip somewhere. Edit edit-webapps/WEB-INF/classes/entityengine.xml and configure for your database (see the "Configure JIRA" section of the docs for more info). Run ./build.sh to generate the webapp. Copy the dist-tomcat/atlassian-jira-3.8.1.war to a new /usr/share/jira/ directory:

jturner@psyche:/usr/share$ sudo mkdir jira
jturner@psyche:/usr/share$ sudo chown tomcat55 jira
jturner@psyche:/usr/share$ sudo cp /tmp/atlassian-jira-enterprise-3.8.1/dist-tomcat/atlassian-jira-3.8.1.war /usr/share/jira/

Setup the Tomcat JIRA config file.

jturner@psyche:/tmp/atlassian-jira-enterprise-3.8.1$ sudo cp dist-tomcat/tomcat-5.5/jira.xml /var/lib/tomcat5.5/conf/Catalina/localhost/

Now edit the copied jira.xml and:

  • Customize the database details
  • Fix the .war path to point to where to put the .war (eg. /usr/share/jira/atlassian-jira-3.8.1.war).

Mine looks like:

<Context path="/jira" docBase="/usr/share/jira/atlassian-jira-3.8.1.war" debug="0">

    <!-- NOTE: If you use a database other than hsqldb:
    * delete the minEvictableIdleTimeMillis and timeBetweenEvictionRunsMillis attributes
    * change the database type in atlassian-jira/WEB-INF/classes/entityengine.xml
    -->
    <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
            username="jturner"
            password="jturner"
            driverClassName="org.postgresql.Driver"
            url="jdbc:postgresql://localhost/jturner"/>

    <Resource name="UserTransaction" auth="Container" type="javax.transaction.UserTransaction"
    factory="org.objectweb.jotm.UserTransactionFactory" jotm.timeout="60"/>
    <Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/>

</Context>

Add extra jars to Tomcat

jturner@psyche:/usr/share/java$ sudo mkdir jira-jars
jturner@psyche:/usr/share/java$ sudo chown $USER jira-jars
jturner@psyche:/usr/share/java$ cd jira-jars
jturner@psyche:/usr/share/java/jira-jars$ wget -q 'http://www.atlassian.com/software/jira/docs/servers/jars/3.8.1/jira-jars-tomcat5.zip'
jturner@psyche:/usr/share/java/jira-jars$ mv jira-jars-tomcat5/* .
jturner@psyche:/usr/share/java/jira-jars$ ls
carol-1.5.2.jar       jira-jars-tomcat5      jotm-1.4.3.jar             jta-1.0.1.jar                   xapool-1.3.1.jar
carol-properties.jar  jira-jars-tomcat5.zip  jotm-iiop_stubs-1.4.3.jar  objectweb-datasource-1.4.3.jar
hsqldb-1.8.0.5.jar    jonas_timer-1.4.3.jar  jotm-jrmp_stubs-1.4.3.jar  ots-jts_1.0.jar
jturner@psyche:/usr/share/java/jira-jars$
jturner@psyche:/usr/share/java/jira-jars$  rm -r jira-jars-tomcat5*
jturner@psyche:/usr/share/java/jira-jars$ cd /usr/share/tomcat5.5/common/lib
jturner@psyche:/usr/share/tomcat5.5/common/lib$ sudo ln -s /usr/share/java/jira-jars/*.jar .

Add JDBC jar to Tomcat

Here using Postgres:

jturner@psyche:/usr/share/tomcat5.5/common/lib$ sudo apt-get install libpgjava
jturner@psyche:/usr/share/tomcat5.5/common/lib$ sudo ln -s /usr/share/java/postgresql-jdbc3.jar .

Create JIRA runtime directory

  • Create JIRA temp dir:

jturner@psyche:/var/lib$ sudo mkdir jira
jturner@psyche:/var/lib$ sudo chown tomcat55 jira/

When importing data, specify /var/lib/jira/index as your index directory.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.