Skip to content

Installing Apps

The instructions below detail the process for installing and enabling a Nautobot app.

You must be absolutely sure to install the app within Nautobot's virtual environment.

Note

If you installed Nautobot in a production environment, you'll want to sudo to the nautobot user first using sudo -iu nautobot.

Install the Package

Download and install the app package per its installation instructions. Apps published via PyPI are typically installed using pip3.

pip3 install <package>

Alternatively, if you're or installing a app from from a local source copy, you may wish to install the app manually by running python setup.py install.

If you are developing a app and want to install it only temporarily, run python setup.py develop instead.

Enable the App

In your nautobot_config.py, add the app's name to the PLUGINS list:

PLUGINS = [
    'app_name',
]

Configure the App

If the app requires any configuration, define it in nautobot_config.py under the PLUGINS_CONFIG parameter. The available configuration parameters should be detailed in the app's README file.

PLUGINS_CONFIG = {
    'app_name': {
        'foo': 'bar',
        'buzz': 'bazz'
    }
}

Run nautobot-server post_upgrade

After installing or upgrading a app, you should always run nautobot-server post_upgrade. This command will ensure that any necessary post-installation tasks are run, for example:

  • Migrating the database to include any new or updated data models from the app
  • Collecting any static files provided by the app
  • Etc.
# nautobot-server post_upgrade
Performing database migrations...
Operations to perform:
  Apply all migrations: admin, auth, circuits, contenttypes, db, dcim, extras, ipam,
nautobot_app_example, sessions, social_django, taggit, tenancy, users, virtualization
Running migrations:
  No migrations to apply.

Generating cable paths...
Found no missing circuit termination paths; skipping
Found no missing console port paths; skipping
Found no missing console server port paths; skipping
Found no missing interface paths; skipping
Found no missing power feed paths; skipping
Found no missing power outlet paths; skipping
Found no missing power port paths; skipping
Finished.

Collecting static files...

0 static files copied to '/opt/nautobot/static', 972 unmodified.

Removing stale content types...

Removing expired sessions...

Invalidating cache...

Restart the WSGI Service

Restart the WSGI service to load the new app:

# sudo systemctl restart nautobot nautobot-worker

Verify that the App is Installed

In the Nautobot UI, navigate to Apps -> Installed Apps. The newly installed app should appear in the displayed table if everything is configured correctly. You can also click on the app's name in this table to view more detailed information about this app.