DevContainers provide a pre-configured development environment for PyRIT using Docker and VS Code, ensuring consistency across all contributors.
Prerequisites¶
Before starting, install:
Docker (Docker Desktop if you are using Windows)
Visual Studio Code
DevContainers Extension in VS Code
You can also follow the Installation section on Developing inside a Container for more details.
Setup Steps¶
1. Clone the PyRIT Repository¶
git clone https://github.com/microsoft/PyRIT
cd PyRIT2. Open in VS Code¶
Open the PyRIT folder in Visual Studio Code:
code .3. Reopen in Container¶
Make sure Docker is running first, for example, by starting “Docker Desktop.”
Press Ctrl + Shift + P (or Cmd + Shift + P on macOS) to open the VS Code Command Palette, then type and select:
Dev Containers: Reopen in Container
VS Code will:
Build the development container (this may take several minutes the first time)
Install all dependencies
Configure the development environment
Reopen VS Code inside the container
Working with Jupyter Notebooks¶
Selecting a Kernel¶
When working with Jupyter Notebooks (.ipynb files):
Open a notebook file in VS Code
Click the “Select Kernel” button in the top-right corner of the notebook
Choose “Python Environments...”
Select the
pyrit-devkernel
Alternatively, you can use the Command Palette:
Press
Ctrl + Shift + P(orCmd + Shift + Pon macOS)Type
>Notebook: Select Notebook KernelChoose “Python Environments...” >
pyrit-dev
This kernel will run all code examples in Python Notebooks.
Viewing Jupyter Variables¶
To view variables populated by code examples:
Go to View > Output
Select Jupyter from the dropdown menu
Common DevContainer Operations¶
Rebuild the Container¶
If you need to rebuild the container (e.g., after dependency changes):
Press
Ctrl + Shift + P(orCmd + Shift + Pon macOS)Type and select:
Dev Containers: Rebuild Container
Reopen Locally¶
To exit the container and return to your local environment:
Press
Ctrl + Shift + P(orCmd + Shift + Pon macOS)Type and select:
Dev Containers: Reopen Folder Locally
Next Step: Configure PyRIT¶
After setting up your DevContainer, configure your AI endpoint credentials.
Troubleshooting¶
Having issues? See the DevContainers Troubleshooting guide for common problems and solutions.