Install Guide - Overview (2.4)

1. Overview

1.1 Choose an Install Type

Sakai downloads are available for three different installation methods on http://sakaiproject.org/release:

Demo: This archive includes the Tomcat container and pre-built webapps, so that the only prerequisite for getting started is Java (v. 1.5). While not intended for large-scale implementations, it is suitable for evaluating the software and small-scale pilot implementations on single servers.
Binary: This is essentially a Demo without the Tomcat - an overlay of .jar and .war files that collectively comprise the application bundle. If you have a working Tomcat appropriately configured the binary installation provides a quick way to drop the Sakai application bundle into place without requiring a maven build. This may be a good choice if you know you don't need to make any code-level changes to the release.
Source: This archive includes only the source code to build Sakai, and therefore calls for preparatory installations of Tomcat and the Maven build tool. The installation and configuration of these various components comprise the bulk of this installation guide.

1.2. Demo Installation

A demo installation is brief and straightforward. The most technically challenging aspect of a demo install is making sure that your Java environment is squared away in advance. The steps are as follows:

  1. Verify Java Installation and Environment Variables (see the first two sections of Set up Environment).
  2. Download and unpack the Demo archive from http://sakaiproject.org/release
  3. Start Tomcat with the following commands from the root Tomcat directory:
    Windows: start-sakai.bat
    Linux/Unix/Mac: start-sakai.sh (you will need execute permissions set with something like 'chmod +x *.sh')

Once Tomcat is started up you can point your browser to http://localhost:8080/portal. This will bring you to the Sakai gateway site from which you can create new accounts and log in to the system.

To stop the demo:

Windows: stop-sakai.bat
Linux/Unix/Mac: stop-sakai.sh
Demo limitations

The data for a demo installation is stored in a HypersonicSQL database (HSQLDB) which is stored in memory and then written out to files when Tomcat is shut down. These files are located at sakai-demo/sakai/db/sakai.db.*.

It should also be noted that the Sakai Demo install is configured to neither send nor receive email.

1.3 Binary Installation

The Binary installation of Sakai provides a shortcut for those that already have Tomcat in place and configured as needed (including the database connection: see Set up Environment for details on Tomcat configuration, and Database Configuration for database details), and it does so by providing a pre-built Sakai that can simply be dropped into place. All you need to do is unpack the binary archive at the root Tomcat directory, and the appropriate wars, jars, etc., for the Sakai application will be deposited in the correct locations.

If you wish to configure a binary installation you'll need to manually create a sakai directory in $CATALINA_HOME to hold your sakai.properties file, as described in Post-Installation Configuration.

Binary limitations

Post-release patches are not made available as jars, and so a binary install forces a relatively static implementation that cannot be as readily patched later.

1.4 Source Installation

The Demo and Binary installs described above provide quick ways to get up and running, but assume that no code-level changes are called for. The remainder of this installation guide devotes itself to the more rigorous and customizable Source installation, although some of its details (e.g. the post-installation configuration) may also be pertinent for more sophisticated uses of the demo and binary installs. The full set of steps for a Source installation may be organized into the following phases:

  1. Set up Environment, including Java, Tomcat, and Maven.
  2. Build and Deploy Sakai by running Maven.
  3. Perform appropriate Post-installation Configuration of the application.
  4. If you want to configure Sakai for either MySQL or Oracle, perform the requisite Database Configuration.

1.5. Migrating from a Previous Release

Migration from an earlier version of Sakai typically involves a database conversion (for which scripts are supplied with the release), an update to any custom skins, and possibly changes to any custom code (see the Release Notes to learn if this is the case).

For links to the conversion scripts, see the Database Configuration section of this guide.

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Aug 18, 2007

    Peter Krauss says:

    "Mac/nix"?? It is not a standard term. There are more "Linux/Unix" users (a lot...

    "Mac/*nix"??

    It is not a standard term. There are more "Linux/Unix" users (a lot of!) than "Mac users"!

    Please preferer "Linux/Unix/Mac" than "Mac/*nix". (explicit and with unix family first).
    The term "Linux/Unix/Mac" indicate a "very generic thing", that incorporate "Solaris", "FreeBSD", etc.

    For marketing "Sakai is Linux/Unix/etc. compatible!", for readers and search engines, the complete term (not "*nix" or similar hermetic way) is better.

    1. Sep 09, 2007

      Clay Fenlason says:

      So amended.

      So amended.

  2. Nov 21, 2007

    Alexander Finn says:

    I've downloaded demo distribution and tryed to run it on linux pc (ubuntu 7.10 3...

    I've downloaded demo distribution and tryed to run it on linux pc (ubuntu 7.10 32bit) and it seems to be starting up but then when I point my browser to the localhost:8080/portal it keeps loading without success. the last log messages are:

    INFO: SakaiBootStrap.init(): autoDdl enabled; running DDL... (2007-11-21 20:42:56,283 main_org.sakaiproject.tool.assessment.shared.SakaiBootStrap)
    INFO: init() (2007-11-21 20:42:56,365 main_org.sakaiproject.tool.assessment.services.assessment.AssessmentEntityProducer)
    INFO: init: creating root collection (2007-11-21 20:42:56,371 main_org.sakaiproject.sample.impl.SampleImplAccess)
    INFO: init: creating root collection (2007-11-21 20:42:56,391 main_org.sakaiproject.sample.impl.SampleImplAccess)
    INFO: init: creating content (2007-11-21 20:42:56,433 main_org.sakaiproject.sample.impl.SampleImplAccess)
    INFO: init() (2007-11-21 20:42:56,433 main_org.sakaiproject.sample.impl.SampleImplAccess)
    INFO: destroy() (2007-11-21 20:42:56,451 main_org.sakaiproject.archive.impl.ArchiveService2Impl)
    INFO: destroy() (2007-11-21 20:42:56,451 main_org.sakaiproject.sample.impl.SampleImplAccess)
    INFO: destroy() (2007-11-21 20:42:56,451 main_org.sakaiproject.content.impl.BaseContentService)
    INFO: destroy() (2007-11-21 20:42:56,451 main_org.sakaiproject.component.app.scheduler.ScheduledInvocationManagerImpl)
    INFO: destroy() (2007-11-21 20:42:56,452 main_org.sakaiproject.assignment.impl.BaseAssignmentService)
    INFO: destroy() (2007-11-21 20:42:56,452 main_org.sakaiproject.message.impl.BaseMessageService)
    INFO: destroy() (2007-11-21 20:42:56,452 main_org.sakaiproject.calendar.impl.GenericCalendarImporter)
    INFO: destroy() (2007-11-21 20:42:56,452 main_org.sakaiproject.calendar.impl.BaseCalendarService)
    INFO: destroy() (2007-11-21 20:42:56,452 main_org.sakaiproject.message.impl.BaseMessageService)
    INFO: BaseSearchManager.destroy() (2007-11-21 20:42:56,453 main_org.sakaiproject.citation.impl.BaseSearchManager)
    INFO: destroy() (2007-11-21 20:42:56,453 main_org.sakaiproject.citation.impl.BaseConfigurationService)

    Does anybody experiencing the same? What should I do to run it and play with it?

    1. Nov 21, 2007

      Peter A. Knoop says:

      Hi Alexander, I don't have an answer for you, however, I would suggest a better ...

      Hi Alexander, I don't have an answer for you, however, I would suggest a better place to ask this sort of quesion is on the sakai-dev email list, where you're much more likely to make contact with someone who can help address your particular question.

      If you're not already a member of sakai-dev, then you first need to join the "DG: Development (a.k.a. sakai-dev)" site on Collab, which is the Sakai instance supporting community collaboration. To do so, sign yourself up for an account using the "New Account" tool here:

      http://collab.sakaiproject.org

      After you're logged-in, you can then use the "Membership" tool to join the "DG: Development (a.k.a. sakai-dev)" site. Now you're all set and you have permission to post to sakai-dev@collab.sakaiproject.org. (If you find the volume of email traffic too overwhelming on the list, you can always use the Membership tool again to un-join the site.)

      You might also want to peruse the email archives in case someone else has already asked or answered a similar question:

      http://www.nabble.com/Sakai-f18101.html