Personal tools
  • We're Hiring!

You are here: Home Documentation OMERO v4.2.2 OMERO.server Install - Windows

Install - Windows

OMERO.server Installation for Microsoft Windows

  • If you are upgrading your OMERO.server installation you want to follow instructions on the upgrade page.
  • If you are attempting a UNIX Based Platform install (Linux, Mac OS X, etc.) please see the UNIX Based Platform install page.

Installation will require an "administrator" level account for which you know the password. If you are unsure of what it means to have a "administrator" level account, or if you are generally having issues with the various users/passwords described in this install guide, please see "Which password do I use where?" under "Troubleshooting".


  • Installation on Vista and Windows 7 is not explicitly supported. Testing has taken place on on 32-bit Windows XP and 64-bit Windows Server 2003 installations.
  • does not work on Windows at present.
  • Spaces are not currently supported in installation path names. Note: default user paths on Windows usually contain spaces so you will need to ensure the path has no spaces, C:\omero_dist for example.
  • A reboot is required after installing the prerequisites


The following are necessary:

  • PostgreSQL 8.2 or higher installed and configured with PL/pgSQL and to accept TCP connections. These instructions assume PostgreSQL 8.3

    The Windows One click installer can be found on the PostgreSQL Windows download page. You will need the postgres user's password later in the install.

    • Yes, this is a higher prerequisite than the UNIX based operating systems. Only recently has PostgreSQL provided Windows service and UTF8 support availability in the default installation on Microsoft Windows.
    • You must install PostgreSQL as a service if you want to follow this document, other PostgreSQL installation environments are supported but are outside the scope of this document.
    • This document assumes a PostgreSQL 8.2 or higher install for ease of installation and documentation. PostgreSQL 8.2 installations are supported but are again, outside the scope of this document.
  • Java 1.5 SE Development Kit (JDK) or higher installed

    Be sure to download the JDK SE version (nor "JRE" nor "EE" versions).

  • Ice 3.3.x installed

    Windows installers can be found on the ZeroC download page and will be called something like Ice-3.3.1-VC80.msi (for Ice 3.3.1). If you will be developing for C++, be sure to read the instructions on the OmeroCpp trac page.

  • ActivePython 2.5.x installed

    Windows installers can be found on the ActivePython download page and will be called something like ActivePython- (for Python 2.5.5). These are toward the bottom of the page, under the 2.6 and 3.0 versions.

    • Use the 32-bit version of ActivePython-, as PIL (in the next step) will not install with the 64-bit version.
    • Packages from can be used but are outside the scope of this document as further configuration is required to get them up and running.
    • Whichever version of Python you install, the "win32" and "ctypes" libraries must be available. (This is the case with ActiveState)

The following are optional depending on the services you require:

  • Python Imaging Library (only for OMERO.web and Figure creation functionality in Insight) Packages should be available for your distribution from here Be sure to download the version that matches your Python version above

  • Matplot Lib (for OMERO.web only) Packages should be available for your distribution from here Be sure to download the version that matches your Python version above

  • Numpy Lib (for scripting services) NumPy is available at the main numpy website here. Again, be sure to grab the version that matches your Python install. It is highly recommended you use numpy 1.3.0

Finally, you need the OMERO server:

Environment variables

For the prerequisite software to run properly, both your PATH and PYTHONPATH system environment variables must be configured.

  • Update your Windows environment variables: (REQUIRES RESTART!)

    1. Locate the System control panel page on the Start Menu under Settings --> Control Panel, open it and navigate to the Advanced tab (on Windows Vista the dialog will be visible after clicking the Change settings link on the System control panel page):

      Advanced System Properties

    2. Open the Environment Variables dialog by clicking on the Environment Variables... button of the above dialog:

      Environment Variables

    3. Edit the existing System environment variable Path and add a new variable pointing to the Ice installation 'bin' directory. Then add a brand new System environment variable called PYTHONPATH pointing to the Ice installation 'python' location:

      PATH variable PYTHONPATH variable

    4. Restart your computer. For environment changes to take effect in background services, a restart is unfortunately necessary. See for more information.

Creating a database

  • Create a non-superuser database user (make sure to note down the name and password) using pgAdmin III. You can find pgAdmin III on the Start Menu under Programs --> PostgreSQL 8.3 --> pgAdmin III:

    1. Double-click on the PostgreSQL Database Server 8.3 and provide your postgres user login password

      Connect to the database server

    2. Right-click on Login Roles (or left-click on Login Roles and navigate to Edit --> New Object...) and select New Login Role...

      Create a new role

    3. Create a new role with the Role name omero and a Password omero. If you choose a password other than omero, you will need to configure the omero.db.pass property below.

  • Create an omero database:

    1. Right-click on Databases (or left-click on Databases and navigate to Edit --> New Object...) and select New Database...

    2. Create a new database with the Name omero and Owner omero (this may take a few moments)

      Create a new database

  • Confirm PL/pgSQL language support to your newly created database

    1. First, go to File --> Options select the Display tab and activate the Languages option:

      Create a new database

    2. Navigate back to your database, expand the database's tree view and finally expand the now available Languages item:

      Create a new database

    3. If the plpgsql language is missing, right-click on the Languages item and select the New language... option in the menu. Finally, add the plpgsql language, accepting all defaults.

      Create a new database

Location for the your OMERO binary repository

  • Create a directory for the OMERO binary data repository. C:\OMERO is the default location and should be used unless you explicitly have a reason not to and know what you are doing.
    • This is not where you want the OMERO application to be installed, it is a separate directory that OMERO.server will use to store binary data:
    • You can read more about there OMERO binary repository here.


  • Extract the OMERO ZIP and note its location. Below it is referred to as: C:\omero_dist. Note: Directory names containing spaces are not supported!

  • Optionally, review C:\omero_dist\etc\ which contains all default settings. You will need to open the file with WordPad.exe. Don't edit the file. Any configuration settings you would like to change can be changed in the next step.

  • Change any settings that are necessary using bin\omero config, including the name and/or password for the 'omero' database user you chose above or the database name if they are not "omero". (Quotes are only necessary if the value could be misinterpreted by the shell. See link)

    cd c:\omero_dist
    bin\omero config set myDatabase
    bin\omero config set omero.db.user me
    bin\omero config set omero.db.pass TopSecret
  • If you have chosen a non-standard OmeroBinaryRepository location above, be sure to configure the property. When using C:\ style file paths it is necessary to "escape" the backslashes. For example:

    bin\omero config set D:\\OMERO
  • Create the OMERO database initialization script. You will be asked for the version of the script which you would like to generate, where both defaults can be accepted. Finally, you'll be asked to enter and confirm password for your newly created OMERO root user (this should not be the same as your Windows login user!)

        c:\> cd C:\omero_dist\
        c:\omero_dist> bin\omero db script
        Please enter omero.db.version [OMERO4.2]: 
        Please enter omero.db.patch [0]: 
        Please enter password for new OMERO root user: 
        Please re-enter password for new OMERO root user: 
        Saving to C:\omero_dist\OMERO4.2__0.sql
  • Initialize your database with the script.

    1. Launch SQL Shell (psql) from the Start Menu under Programs --> PostgreSQL 8.3 --> SQL Shell (psql)

      Server [localhost]:
      Database [postgres]: omero
      Port [5432]:
      Username [postgres]: omero
      Password for user omero:
      Welcome to psql 8.3.7, the PostgreSQL interactive terminal.
      Type:  \copyright for distribution terms
             \h for help with SQL commands
             \? for help with psql commands
             \g or terminate with semicolon to execute query
             \q to quit
      Warning: Console code page (437) differs from Windows code page (1252)
               8-bit characters might not work correctly. See psql reference
               page "Notes for Windows users" for details.
    2. Execute run the following to populate your database:

      omero=> \i /omero_dist/OMERO4.2__0.sql
      omero=> \q
  • Start the server:

    C:\omero_dist> bin\omero admin start
    Creating var\master
    Initializing var\log
    Creating var\registry
    No descriptor given. Using etc\grid\default.xml
    [SC] CreateService SUCCESS
            TYPE               : 10  WIN32_OWN_PROCESS
            STATE              : 2  START_PENDING
            WIN32_EXIT_CODE    : 0  (0x0)
            SERVICE_EXIT_CODE  : 0  (0x0)
            CHECKPOINT         : 0x0
            WAIT_HINT          : 0x7d0
            PID                : 2312
            FLAGS              :
    Waiting on startup. Use CTRL-C to exit
  • If you've chosen a non-default install directory (other than c:\omero_dist), the output will look like this:

    C:\OMERO.server-Beta-4.2.0>bin\omero admin start
    Found default value: c:\omero_dist\var\master
    Attempting to correct...
    Converting from c:\omero_dist to C:\OMERO.server-Beta-4.2.0
    Changes made: 6
    No descriptor given. Using etc\grid\windefault.xml
    [SC] CreateService SUCCESS
  • If you would like to move the directory again, see bin\winconfig.bat --help, which gets called automatically on an initial install.

OMERO.web and Administration

OMERO.web is the web application component of the OMERO platform and can be started with the lightweight development Web server bound to port 4080 on after you've deployed your OMERO.server instance, as described above. This lightweight web server is written purely in Python and is ideal for developing and testing OMERO.web. However, this server is only designed to run in a local environment, and will not deal with the pressures of a production server used by many people concurrently.

In order to deploy OMERO.web in a production environment such as Apache or IIS please follow the instructions under "Web on Production".

Otherwise please give a try of the internal webserver and setup:

c:\omero_dist> bin\omero config set omero.web.application_server development

then start/stop by

c:\omero_dist> bin\omero web start\stop
Starting django development webserver... 
Validating models...
0 errors found

Django version 1.1.1, using settings 'omeroweb.settings'
Development server is running at
Quit the server with CONTROL-C.

Once you have deployed and started the server you can use your browser to access the OMERO.webadmin administration interface:

Enabling Movie creation from OMERO.

OMERO has the facility to create AVI/MPEG Movies from Images which can be called from Insight. The page OmeroMovie gives details on how to enable them.

Post-installation items


It is now recommended that you read the Security page to get a good idea as to what you need to do to get OMERO clients speaking to your newly installed OMERO.server in accordance with your institution or company's security policy.

Advanced configuration

Once you've gotten the base server running, you may want to try enabling some of the advanced features such as FS or LDAP. If you have Flex data, you may want to watch the HCS configuration screencast. See the Feature list for more advanced features you may want to configure and use. Some other options are briefly mentioned below:

  • Set session timeout - Duration of inactivity after which a login is required (in seconds):

    $ bin\omero config set omero.sessions.timeout 3600000

Please Note We are currently looking for a clean and easy way to install and enable OMERO.tables under Windows using released packages. You may have some success following the OmeroTables wiki page, but currently we do not recommend you use this additional feature on Windows. As always, please contact us on our forums if you have any additional questions.

Update Notification

Your OMERO.server installation will check for updates each time it is started from the Open Microscopy Environment update server. If you wish to disable this functionality you should do so now as outlined on the UpgradeCheck page.


My OMERO install doesn't work! What do I do now!?! Examine the Troubleshooting page and if all else fails post a message to our ome-users mailing list discussed on the Community page.

OMERO Diagnostics

If you want help with your server installation, please include the output of the diagnostics command: C:omero_dist> binomero admin diagnostics

    OMERO Diagnostics Beta-4.2.0-GA

    Commands:   java -version                  1.6.0     (C:\WINDOWS\system32\java.EXE -- 3 others)
    Commands:   python -V                      2.5       (C:\Python25\python.EXE)
    Commands:   icegridnode --version          3.3       (C:\Ice-3.3.1\bin\x64\icegridnode.EXE -- 2 others)
    Commands:   icegridadmin --version         3.3       (C:\Ice-3.3.1\bin\x64\icegridadmin.EXE -- 2 others)
    Commands:   psql --version                 8.3       (C:\Program Files (x86)\PostgreSQL\8.3\bin\psql.EXE -- 2 others)

    Server:     icegridnode                    running
    Server:     Blitz-0                        active (pid = 7704, enabled)
    Server:     DropBox                        active (pid = 8008, enabled)
    Server:     FSServer                       active (pid = 7088, enabled)
    Server:     Indexer-0                      active (pid = 4728, enabled)
    Server:     OMERO.Glacier2                 active (pid = 5456, enabled)
    Server:     OMERO.IceStorm                 active (pid = 800, enabled)
    Server:     Processor-0                    active (pid = 7316, enabled)
    Server:     Tables-0                       active (pid = 4420, enabled)
    Server:     TestDropBox                    inactive (enabled)
    Server:     Web                            inactive (enabled)

    Log dir:    C:\hudson\trunk\dist\var\log   exists

    Log files:  Blitz-0.log                    10.0 MB       errors=4    warnings=26
    Log files:  DropBox.log                    2.0 KB
    Log files:  FSServer.log                   1.0 KB
    Log files:  Indexer-0.log                  8.0 MB        errors=18   warnings=1870
    Log files:  OMEROweb.log                   n/a
    Log files:  Processor-0.log                0.0 KB
    Log files:  Tables-0.log                   0.0 KB
    Log files:  TestDropBox.log                n/a
    Log files:  master.err                     0.0 KB
    Log files:  master.out                     0.0 KB
    Log files:  Total size                     18.94 MB

Document Actions