Skip to content

Configuring Instances

How do I change my instance's settings or add environment variables?

Use the Settings tab. When creating a new Nautobot instance, the Settings tab lets you pass any environment variable and its value; for an existing instance, open the Settings tab on the instance page to add or edit them. This is how you provide non-default nautobot_config.py settings — each entry becomes an environment variable the instance reads at startup. Note: this tab should not be used for secrets — see Secrets.

Do environment variables I set need a NAUTOBOT_ prefix?

It depends on the setting. Standard Nautobot settings are read from NAUTOBOT_-prefixed environment variables (for example NAUTOBOT_ALLOWED_HOSTS or NAUTOBOT_CELERY_TASK_TIME_LIMIT); you can find each setting and its environment-variable name in the Nautobot settings reference. A set of Nautobot Cloud–specific settings are read without the prefix — for example the SSO variables SSO, SSO_ENABLE_GROUP_SYNC, SSO_CLAIMS_GROUP, SSO_SUPERUSER_GROUPS, and SSO_STAFF_GROUPS (see Enable SSO and Group Sync on an instance). When in doubt, use the exact variable name given in the documentation for that setting or app, and open a support ticket if you're unsure.

How do I increase timeout values for long-running jobs or requests?

Job and task timeouts are Nautobot settings you can set from the Settings tab of your instance using environment variables: NAUTOBOT_CELERY_TASK_SOFT_TIME_LIMIT (default 300 seconds) and NAUTOBOT_CELERY_TASK_TIME_LIMIT (default 600 seconds). After changing them, Update the instance for the change to take effect. Web-server and load-balancer (HTTP) request timeouts are managed at the platform level — if you need those raised, open a support ticket.

Can I add Nautobot Jobs by placing files in JOBS_ROOT?

No. In Nautobot Cloud an instance's local filesystem is ephemeral and is not shared across its web and worker pods, so files placed in JOBS_ROOT would not persist or run reliably. Add Jobs using a Git Repository instead — Nautobot syncs Jobs from Git on demand. If you need Jobs baked directly into your instance, open a support ticket to discuss.

I have a custom Nautobot image that Network to Code built for me. How do I move to self-service customization?

Self-service customizations are layered on top of a standard Nautobot base Image, so migrating means recreating your image's contents yourself and letting the Console rebuild them. Do this on a non-production instance first (see Environments & Promotion):

  1. Inventory your current image — the custom Apps (and versions), pip dependencies, and static files it includes. If you're not sure what's in it, ask support.
  2. Move the instance to a standard base Image — a Nautobot 3.2.0 or higher Image (see Upgrade Nautobot).
  3. Re-add each customization yourself: install the custom Apps (from PyPI or by uploading the same package), declare the pip dependencies, upload the static files, and set any App configuration.
  4. Update the instance — the Console builds a new self-service image with your customizations and deploys it. Verify it, then repeat the change on production.

Not everything is self-service yet. If your custom image includes something the self-service feature doesn't cover — for example OS/system packages, custom Jinja2 filters, or bespoke nautobot_config.py logic — you can't fully migrate those pieces on your own yet. Keep using your Network to Code–managed image, or contact support, for anything not yet supported.