Skip to main content

CLI based tool to deploy Jupyter applications that integrates with infrastructure as code frameworks.

Project description

Jupyter Deploy

Jupyter deploy is an open-source command line interface tool (CLI) to deploy and manage interactive applications such as JupyterLab to the Cloud.

Documentation: jupyter-deploy.readthedocs.io

Templates

The jupyter-deploy CLI interacts with templates: infrastructure-as-code packages that you can use to create your own project and deploy resources in your own cloud provider account.

Templates are nominally python packages distributed on PyPI. You can install and manage templates in your virtual environment with pip or uv. jupyter-deploy automatically finds the templates installed in your Python environment.

jupyter-deploy ships with a default template: jupyter-deploy-tf-aws-ec2-base. Refer to jupyter-deploy-tf-aws-ec2-base on PyPI for instructions on setting up the AWS infrastructure needed for your deployment.

Installation

Consider creating or activating a virtual environment.

We recommend using uv.

From your uv environment:

uv add jupyter-deploy

Or with pip:

pip install jupyter-deploy

The CLI

Entry points

From a terminal, run:

jupyter-deploy --help

# or use the alias
jd --help

# or use the jupyter CLI
jupyter deploy --help

Start a project

First create a new project directory:

mkdir my-jupyter-deployment
cd my-jupyter-deployment

In the rest of this page, we will use the default template.

# Get started with the default template
jupyter-deploy init .

# Or use the init flags to select another template that you installed in your virtual environment
jupyter-deploy init --help

# For example, the AWS EC2 base template
jupyter-deploy init -E terraform -P aws -I ec2 -T base . 

Configure your project

There are two ways to configure your project:


File based: Edit the variables.yaml file:

  • add required variable values in the required and required_sensitive section
  • optionally override default values in the overrides section

Then run:

jupyter-deploy config

Interactive experience: Alternatively, fill in the variable values from your terminal with:

# Discover the variables available for your specific template
jupyter-deploy config --help

# Run the interactive configuration and set the variables values as prompted
jupyter-deploy config

# Optionally save sensitive values to your project files
# Sensitive values are passwords, secret keys or API tokens that your applications
# need to access at runtime.
jupyter-deploy config -s

# Update a variable value afterwards (variable names depends on the template you use).
jupyter-deploy config --instance-type t3.small

Deploy your project

The next step is to actually create your infrastructure

jupyter-deploy up

Access your application

Once the project was successfully deployed, open your application in your web browser with:

jupyter-deploy open

You will be prompted to authenticate. You can share this URL with collaborators, they will prompted to authenticate on their own web browser.

Turn on and off your compute instance

The default template supports temporarily turning off your instance to reduce your cloud bill.

# Retrieve the current status of your compute instance
jupyter-deploy host status

# Stop an instance
jupyter-deploy host stop

# Restart it
jupyter-deploy host start

# You may also need to start the containers that run your application
jupyter-deploy server start

Winddown your resources

To delete all the resources, run:

jupyter-deploy down

License

The jupyter-deploy CLI is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_deploy-0.6.5.tar.gz (378.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyter_deploy-0.6.5-py3-none-any.whl (253.7 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_deploy-0.6.5.tar.gz.

File metadata

  • Download URL: jupyter_deploy-0.6.5.tar.gz
  • Upload date:
  • Size: 378.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for jupyter_deploy-0.6.5.tar.gz
Algorithm Hash digest
SHA256 46fa7012152c24c919a63809ba7cfc156e375d619f479cf3b454c5cdbccf3021
MD5 7633a80a6996a4058d7b8420e3bd8dd2
BLAKE2b-256 21e38c83fb258b4e49ae1815524f2a3c15d48aad6fe7aaf0bbda0324a1ab60c9

See more details on using hashes here.

File details

Details for the file jupyter_deploy-0.6.5-py3-none-any.whl.

File metadata

  • Download URL: jupyter_deploy-0.6.5-py3-none-any.whl
  • Upload date:
  • Size: 253.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for jupyter_deploy-0.6.5-py3-none-any.whl
Algorithm Hash digest
SHA256 bab217ab50303ee81945bf749cc4322a53d8f1b1f6fa79f030c4310d90f9d86c
MD5 d9311799d2af2a8e5b98f1b1b229a0c7
BLAKE2b-256 c6518fe3b97edf94be9c19868277190497c844450bc219bc0c0bd6d82caa864d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page