Installation

This guide covers installing Jobmon for different use cases.

Quick Install

For most users, install the Jobmon client with pip:

pip install jobmon_client

This installs the Python client library you need to define and run workflows.

Installation Options

Client Only

If you just need to submit workflows to an existing Jobmon server:

pip install jobmon_client

Client with Server

If you need to run a local Jobmon server (for development or testing):

pip install jobmon_client[server]

This includes the server components needed to run Jobmon locally.

Using Conda

If you prefer conda:

# Create a new environment
conda create -n jobmon python=3.10
conda activate jobmon

# Install Jobmon
pip install jobmon_client

R Installation

The R client is available for users who prefer R: .. code-block:: r

# Install from source (contact your Jobmon administrator for the package) install.packages(“jobmon”, repos = NULL, type = “source”)

Note

The R client requires a working Jobmon server. Contact your system administrator for server connection details.

Verify Installation

After installation, verify everything works:

import jobmon.client
print(jobmon.client.__version__)

You should see the version number printed without errors.

Configuration

Jobmon needs to know how to connect to the server and which cluster to use.

Environment Variables

The simplest way to configure Jobmon is with environment variables:

export JOBMON__HTTP__SERVICE_URL="http://jobmon-server.example.com:5000"

Configuration File

For persistent configuration, create a YAML file and point to it:

export JOBMON__CONFIG_FILE="/path/to/your/jobmonconfig.yaml"

Example configuration file:

http:
  service_url: "http://jobmon-server.example.com:5000"

# Optional: Set default cluster
distributor:
  cluster_name: "slurm"

Note

At IHME, the jobmon_installer_ihme package automatically configures the server URL. Contact your system administrator for the correct configuration for your organization.

Development Setup

For contributors who want to develop Jobmon itself, see the Developer Setup section in the README.

Docker Setup

For local development with Docker:

git clone https://github.com/ihmeuw-scicomp/jobmon.git
cd jobmon
docker-compose up

This starts:

  • Jobmon backend server

  • Jobmon GUI

  • Database

Troubleshooting

Import Errors

If you get import errors, ensure you have the correct Python version:

python --version  # Should be 3.9 or higher

Connection Errors

If you can’t connect to the server:

  1. Verify the server URL in your configuration

  2. Check network connectivity to the server

  3. Ensure any required VPN is connected

For more help, see Troubleshooting.

Next Steps