{scrollbar}

This article is organized as follows:

It is possible to run multiple instances of geronimo on the same machine. Currently multiple instances of geronimo share the following directories in <geronimo_home>, the directory where you installed Geronimo.

Each instance gets its own copy of the following at <geronimo_home>/<instance_name>

bin, lib and schema are read-only, and thus may be shared between instances. The repository is shared, i.e. an application deployed in one instance will show up in the list of deployed modules, but not running, in all the other instances!

Creating A New Server Instance

Be Careful

Start with a fresh image of geronimo. Do not use an image that has been used to run the default instance.

To create an instance named foo do the follwing. All your instance data will be put in <geronimo_home>/foo. All the directories named below are relative to <geronimo_home>.

  1. mkdir foo
  2. Copy var to foo.
  3. Edit foo/var/config/config.substitutions.properties and change the portOffset. Try using 10, 20, 30.. etc for various instances.

An Example

We will be using var as a template.

Running An Instance

  1. Set the org.apache.geronimo.server.name system property to the instance name before you start the server. Use the syntax -Dorg.apache.geronimo.server.name=foo for an instance named foo located at <geronimo_home>/foo. Add this to your GERONIMO_OPTS environment variable Windows Hint

    set GERONIMO_OPTS=-Dorg.apache.geronimo.server.name=foo

  2. Start the server using startup <geronimo_home>/bin/startup
  3. To shutdown this instance use the port number of RMI Naming port (default 1099) <geronimo_home>/bin/shutdown --port <port_num>
  4. To deploy applications to this instance use the port number of RMI Nmaing port <geronimo_home>/bin/deploy --port <port_num> deploy ......

The Geronimo Administration Console can also be used for all these operations. Connect to an instance by using the right HTTP port (default 8080)

The Default Instance

The default instance is nameless, i.e. it is run from <geronimo_home>/var. It can be deleted!

Coming Soon!

The default instance named 'geronimo' will be created and run using the following. It will use <geronimo_home>/geronimo for instance data.

<geronimo_home>/bin/startup

Other Useful Enhancements

To use multiple repositories see:
Multiple Repositories