The Bamboo EAR-WAR distribution is intended for deployment into an existing J2EE application server. It is assumed that you already know how to deploy a web application on the application server of choice. If not, we recommend that you install the Bamboo distribution.

The following instructions are only indicative of the process and examples are based on installing the Bamboo WAR file on the Apache Tomcat application server. Deployment and configuration will differ from the procedure below if you choose to deploy the Bamboo EAR-WAR distribution on another (unsupported) application server.

Before you begin:
  • Please ensure that you have read the Requirements section of the Bamboo Installation Guide.
  • Deploying multiple Atlassian applications in a single Tomcat container is not supported. We do not test this configuration and upgrading any of the applications (even for point releases) is likely to break it. There are also a number of known issues with this configuration (see this FAQ for more information).

    We also do not support deploying multiple Atlassian applications to a single Tomcat container for a number of practical reasons. Firstly, you must shut down Tomcat to upgrade any application and secondly, if one application crashes, the other applications running in that Tomcat container will be inaccessible.

    Finally, we recommend not deploying any other applications to the same Tomcat container that runs Bamboo, especially if these other applications have large memory requirements or require additional libraries in Tomcat's lib subdirectory.

1. Download and install Bamboo EAR-WAR

  1. Download Bamboo WAR for your operating system. Bamboo WAR files for Linux, Mac OS X and Windows are available for download from the Bamboo Download Center.
  2. Create a new directory for the Bamboo instance inside the <Tomcat Installation Directory>\webapps folder and extract the WAR file into this new directory. This directory is referred to as the installation directory (i.e. <Bamboo-Install>)

    Extracting the Bamboo WAR

    • Windows users must avoid Win XP's built-in unzip as it doesn't extract all the files. Use a third-party zip extractor like WinZip.
    • Linux and Mac users can use the command below:

      jar -xvf atlassian-bamboo-X.Y.Z.war

      Where X.Y.Z is the Bamboo distribution version number.

    (info) The name of the directory in the webapps folder will form the URL required to access Bamboo (e.g. <Tomcat Installation Directory>/webapps/bamboo-4.4.5/ will become http://host:port/bamboo-4.4.5/). You may wish to change the directory name for a more concise access URL.

2. Set the Bamboo Home

Please choose only one of the three methods below in order to set your Bamboo Home directory. You may also want to check if Bamboo Home is not already defined in one of the methods below, to avoid having Bamboo Home defined in multiple places.

Method 1: Set the bamboo.home property in the file <Bamboo_Install>/WEB-INF/classes/bamboo-init.properties to your chosen Bamboo home directory.

Method 2: Pass the Bamboo home directory to the application server:
Doing this on Windows:
a) Create or edit the <Tomcat Installation Directory>\bin\setenv.bat file.
b) Create or edit the JAVA_OPTS variable inside setenv.bat and add the -Dbamboo.home parameter. It should look like this:

set JAVA_OPTS=-Dbamboo.home=C:/path/to/bamboo_home %JAVA_OPTS%

Doing this on Linux or Mac: 
a) Create or edit the <Tomcat Installation Directory>\bin\setenv.sh file.
b) Create or edit the JAVA_OPTS variable inside setenv.sh and add the -Dbamboo.home parameter. It should look like this:

#!/bin/sh
#
# ENVARS for Tomcat and TDS environment
#
JAVA_OPTS="-Dbamboo.home=/opt/bamboo/bamboohome $JAVA_OPTS"
export JAVA_OPTS

c) If you've created the <Tomcat Installation Directory>\bin\setenv.sh file, you need to grant execute permissions:

chmod +x setenv.sh


Method 3: 
Specify an environment variable BAMBOO_HOME which specifies the absolute path to your BAMBOO_HOME directory.

3. Set jms.broker.uri

If you are going to use Bamboo Remote Agents, set the following in the <Bamboo_Install>/WEB-INF/classes/bamboo-init.properties file:

bamboo.jms.broker.uri=tcp://localhost:54663
  • Replace 'localhost' with the real host name or IP address of your Bamboo server.
  • If port number 54663 is already in use, specify a different port number.

4. Add these other parameters into JAVA_OPTS

You have to set the following Java OPTs on your application server:

  • -server — Ensures that the jvm starts up in server mode. This will perform various optimisation tasks which are beneficial for long-running applications.
  • -Xmx512m — Sets the maximum memory recommended for Bamboo.
  • -XX:MaxPermSize=256m — Sets the maximum permgen memory recommended for Bamboo.
  • -Djava.awt.headless=true(Unix systems only) This allows AWT to run in headless mode and is required if running Bamboo in non-graphical environments. For more details visit the Sun Developer Network.

On Windows:

  1. Open the <Tomcat Installation Directory>\bin\setenv.bat file.
  2. Assign the desired properties to the JAVA_OPTS variable:

    set JAVA_OPTS=-server -Xmx512m -XX:MaxPermSize=256m -Dbamboo.home=C:/path/to/bamboo_home %JAVA_OPTS%
    

    (info) Delete the Bamboo Home definition from the JAVA_OPTS above if you've defined it using a different method (as explained in Step 2).

On Linux and Mac:

  1. Open the <Tomcat Installation Directory>\bin\setenv.sh file.
  2. Assign the desired properties to the JAVA_OPTS variable:

    JAVA_OPTS="-server -Xmx512m -XX:MaxPermSize=256m -Djava.awt.headless=true -Dbamboo.home=/opt/bamboo/bamboohome $JAVA_OPTS"
    export JAVA_OPTS
    

    (info) Delete the Bamboo Home definition from the JAVA_OPTS above if you've defined it using a different method (as explained in Step 2).

5. (Optional) Edit the Bamboo Context Descriptor (Tomcat)

If you have extracted the WAR file to a directory other than the default directory (e.g. for a Tomcat application server), you need to deploy <bamboo-install> by following the steps below:

  1. Create a file called bamboo.xml in your Tomcat installation's conf/Catalina/localhost directory. If you have set up a different hostname for your Tomcat instance, please use your specified hostname instead of localhost.
    (info) Please note, if you are using Tomcat 6 you must create the Catalina and localhost directories.
  2. Open your new bamboo.xml and add the following:

    <Context path="/bamboo" docBase="c:/applications/bamboo-war/" debug="0" reloadable="true">
    </Context>
    

    (info) If you wish to change the context path to a different name, change both the context path and the name of the xml file.

     

  3. For docBase, specify the <bamboo-install> absolute path that you noted down earlier.

If you are installing Bamboo 3.4 or newer versions

If installing Bamboo 3.4, or newer versions, please make sure that you apply the Tomcat configuration suggested in this KB Article.

6. Configure Bamboo

  1. Start Tomcat.
  2. Access your running Bamboo instance on http://host:port/bamboo (please note that the URL may vary as explained in Step 1)
     (info) The default port used by Tomcat is 8080. If you have other applications running on this same port, please edit the default port that Tomcat should use, by editing the port parameter for the Connector element in <Tomcat Installation Directory>\conf\server.xml:

    <Connector port="8080" protocol="HTTP/1.1"
                   connectionTimeout="30000"
                   redirectPort="8443" />
  3. Configure Bamboo via the Setup Wizard which will display. Read Running the Setup Wizard for further instructions.