Create Sandbox

There are several ways to create a Sandbox in Buddy. You can do it through a pipeline action, by going to the Sandboxes tab and clicking New Sandbox in the upper-right corner or through REST API

Image loading...

Creating a new Sandbox

Sandbox configuration

Image loading...Sandbox creation window

When creating a new Sandbox you can configure the following parameters:

  • Name - The name of the Sandbox, which automatically generates a unique identifier (ID).
  • OS - Select an operating system from available options
  • Resources - Configure resources available for the sandbox in CPU x RAM format. Default is 2CPU and 4GB of RAM.
  • Install commands - Add installation commands to be executed during Sandbox setup.
  • Type App - Select how your app is ru:
    • CMD - app is executed as a command
    • SERVICE - app is executed as a system serivce
  • Run Command or Service - Enter the command running the app (e.g., npm start, nginx -t)
  • App directory - Set the default app directory (e.g., /var/www/html for nginx).
  • Variables, Keys & Assets - Manage variables, assets, SSH keys, public SSH keys, and add files to your Sandbox
  • Public Network Endpoint - Configuration of access points. Two endpoints are added by default. Learn more in Endpoints
  • Tags - Assign tags to the Sandbox (e.g., staging, testing, demo).

Copying existing Sandbox

Image loading..."Copy Existing" option

This option allows you to create a new Sandbox based on an existing one.

  1. Name: Provide a name of a new Sandbox
  2. Base Sandbox: Select a sandbox to copy

Buddy will automatically create a new Sandbox using the configuration of an existing one.

Creating Sandbox from a snapshot

Image loading...Creating Sandbox from a snapshot

Snapshots allow you to create Sandboxes from a previously saved state:

  1. Name: Name of a new Sandbox
  2. Base Snapshot: Select the snapshot from which the Sandbox should be created.
  3. Resources: Configure resources of the new Sandbox
  4. Additional settings: You can adjust any other settings as needed to match your requirements.

Import YAML

You can import the target configuration using YAML.

From Git repository

Image loading...Import YAML from Git

You can import the Sandbox configuration from a YAML file located in your Git repository

  1. Select the Import YAML option
  2. Choose the From Git tab
  3. Select project, and branch
  4. Enter the YAML path (e.g., .buddy/sandbox.fixed.yml)
  5. Configure additional modules managed using YAML definition (Variables, Assets)
  6. Click Import sandbox

Inline YAML

Alternatively, you can paste the YAML configuration:

  1. Select the Import YAML option
  2. Choose the Inline YAML tab
  3. Paste your YAML configuration or upload from your device:
yaml
- sandbox: my-sandbox name: My Test Environment os: ubuntu:24.04 resources: 3x6 install_commands: |- apt-get update apt-get install -y nginx tags: - testing - staging run_command: nginx -t app_dir: /var/www/html app_type: SERVICE endpoints: - my-sandbox: 80
  1. Optionally provide a salt for encrypted secrets
  2. Click Import sandbox

Managing sandboxes via API

You can also create and manage Sandboxes programmatically using the REST API:

Managing sandboxes via Pipeline Actions

You can also create and manage Sandboxes using pipeline actions:

Last modified on Oct 22, 2025