------ Installing Continuum Standalone ------ Emmanuel Venisse ------ 2008-09-01 ------ Installing Continuum Standalone ~~%{toc|section=0} * {Basics & Fundamentals} * Download the standalone version from the {{{http://continuum.apache.org/download.html} Download page}} * Extract the file * Set a JAVA_HOME environment variable which use a jdk >= 1.5 ** {Defining JNDI Resources} *** {Mail server configuration} Before to start Continuum, you must configure your SMTP configuration for mail notification. The configuration to do is in <<<$CONTINUUM_HOME/conf/jetty.xml>>>: %{snippet|id=mail|url=http://svn.apache.org/repos/asf/continuum/trunk/continuum-jetty/src/main/conf/jetty.xml} *** {Databases configuration} By default, Continuum use an embedded {{{http://db.apache.org/derby}Derby}} database. If you want to use an other database, you can modify the JNDI configuration in <<<$CONTINUUM_HOME/conf/jetty.xml>>>: %{snippet|id=datasources|url=http://svn.apache.org/repos/asf/continuum/trunk/continuum-jetty/src/main/conf/jetty.xml} * {Installing as a Windows Service} * Go to <<<$CONTINUUM_HOME/bin/>>> and run the following command: ------------------ continuum.bat install ------------------ * Edit the <<<'Apache Continuum'>>> service * To see the services that are on your computer go to Start|Run and enter <<<'services.msc'>>>. * Select the <<<'Startup Type'>>> * Go to the <<<'Log On'>>> tab and select a real user. A real user is required because you'll need a home directory for maven repository and some other things * Validate your changes * {Installing as a Linux Service} Since the Continuum linux script bin/linux/run.sh understands the same arguments as linux boot scripts, there is no need to write a particular startup script to add Continuum to the linux boot process. All you need to do, as root, is: ** {Basic script in /etc/init.d} * Create a <<<'continuum'>>> file under <<>> with the following content (replacing <<>> with the name of an account you have already created): ------------------ #!/bin/sh CONTINUUM_HOME=/opt/continuum-1.2 su - continuum_user -c "$CONTINUUM_HOME/bin/continuum console $@ &" ------------------ ** {In a Debian-based system} ------------------ ln -s /usr/local/continuum-[VERSION]/bin/linux/run.sh /etc/init.d/continuum ------------------ At this point you have Continuum ready to be symlinked from different runlevels. This might sound a bit esoteric, but it is not, you will find these words very fast as soon as you start reading about the init process. Fortunately, Debian GNU/Linux comes with a very handy utility to create this links, just run as root: ------------------ update-rc.d -n continuum defaults 80 ------------------ If you run this command, you will see something like this: ------------------ Adding system startup for /etc/init.d/continuum ... /etc/rc0.d/K80continuum -> ../init.d/continuum /etc/rc1.d/K80continuum -> ../init.d/continuum /etc/rc6.d/K80continuum -> ../init.d/continuum /etc/rc2.d/S80continuum -> ../init.d/continuum /etc/rc3.d/S80continuum -> ../init.d/continuum /etc/rc4.d/S80continuum -> ../init.d/continuum /etc/rc5.d/S80continuum -> ../init.d/continuum ------------------ What you see is the symlinks that would be created. The above command didn't do anything because of the -n switch, remove it to get the real links created. ** {In a RedHat-based system} Configuring Continuum in a RedHat-based system (like Fedora Core) is slightly different: Instead of running update-rc.d, you need to add a new service using chkconfig. And in order to add Continuum to chkconfig, it is necessary to add some comments to the /etc/rc.d/init.d/continuum script and run a couple of commands; these tasks are automatically executed by running the chkconfig_install.sh script (note that _continuum_user_ needs to be replaced by the name of an account you have already created): ------------------ #! /bin/sh # # chkconfig_install.sh - install Continuum on a chkconfig-bases system # # Author: Felipe Leme # # figure out what's Continuum's directory CONTINUUM_HOME=`dirname $0` cd ${CONTINUUM_HOME} CONTINUUM_HOME=`pwd` INITD_SCRIPT=/etc/rc.d/init.d/continuum if [ -f ${INITD_SCRIPT} ] then echo "File ${INITD_SCRIPT} already exists. Please remove it and try again." exit 1 fi echo "Creating file ${INITD_SCRIPT}" cat >> ${INITD_SCRIPT} <