Applications in a Project#

Overview of Managed Applications#

Screenshot of the application section in the Project Container page. From left to right shows JupyerLab and a tutorial app.

Note

The best way to understand how applications work is work through the exercises in the Onboarding Project.

IDEs (JupyterLab, VS Code) or web apps like TensorBoard (or JupyterLab) are an important part of development environments.

AI Workbench lets you add and manage these kinds of applications to a project, and it has features for starting, stopping, monitoring, and logging through the UI.

You must configure an application in a project before it can be managed.

  • Applications are added on a project-by-project basis

  • Application dependencies must be installed in the project container

  • Application code must be in the repository

  • Once the dependencies are installed and the code is in place, you add an application by configuring launch and management instructions

Managed applications are divided into Classes and Types.#

Class

Type

Examples

Deployment

Requirements

Configuration

Web App

Project container

JupyterLab, TensorBoard

Runs in the project container

Dependencies installed in project container and relevant code in repository

Start/stop commands, port, and other configuration options

Process

Project container

Shell script

Runs in the project container

Dependencies installed in project container and relevant code in repository

Start/stop commands

Compose App

Multi-container

PDF-to-Podcast Blueprint

Runs in multiple containers

A compose file in the repository

compose yaml file

Native App

System application

VS Code

Runs locally with access to the project container

Varies by OS

Potentially requires manual steps

Adding Appplications to the Project Container#

Screenshot of the add application modal.

Add web-apps, processes and native apps in Environment > Project Container > Applications.

Web Apps and Processes#

  • Install application dependencies in the project container

  • Add the application code to the repository

  • Know the start/stop commands and the appropriate port number

  • Complete Environment > Project Container > Applications > Add > Create a custom app

Note

See Walkthrough: Add a Custom Application for an example.

Adding JupyterLab or VS Code#

If these applications are not already configured in a project, you can add them by clicking Add in Environment > Project Container > Applications > Add.

Configuring VS Code may require some extra manual steps depending on your container runtime or OS. See VS Code Integration for details.

Multi-Container Applications (Compose Apps)#

The Environment > Compose section allows you to configure, start, stop, and manage multi-container applications within AI Workbench.

Requirements to successfully configure a Compose application:

  • The Compose file must be in the top level of the repository

  • The Compose file must be valid and correctly formatted

  • The service name in the Compose file matches the name of the application

AI Workbench leverages service profiles to determine which services run within the application. If no profile is specified, the default profile is used.

For details see Multi-Container Environments.

FAQs#

Can I use the CLI to add and configure applications?#

Yes. The CLI has the same functionality as the Desktop App.

Is adding an application version-controlled?#

Yes. Adding web apps, processes or VS-Code creates an entry in the .project/spec.yaml file, and a Compose app requires a compose file in the repository.

Deleting an application in the Desktop App removes the entry from the .project/spec.yaml file, and removing the compose file from the repository removes the Compose app.