This page covers how to set and use environment variables in a sandbox, and default environment variables inside the sandbox.

Default environment variables

Knowing if you are inside a sandbox

Sometimes it’s useful to know if the code is running inside a sandbox. Upon creating a sandbox, an environment variable E2B_SANDBOX is automatically set to true. You can try it out by running the following code in the sandbox:

import { Sandbox } from '@e2b/code-interpreter'

const sandbox = await Sandbox.create()
const result = await sandbox.commands.run('echo $E2B_SANDBOX')

console.log(result)

// Output example:
// { exitCode: 0, error: undefined, stdout: 'true\n', stderr: ' ' }

Setting environment variables

There are 3 ways to set environment variables in a sandbox:

1. Global environment variables

You can set global environment variables when creating a sandbox.

import { Sandbox } from '@e2b/code-interpreter'

const sandbox = await Sandbox.create({
  envs: {
    MY_VAR: 'my_value',
  },
})

const result = await sandbox.commands.run("echo $MY_VAR")

console.log(result)

// Output example:
// { exitCode: 0, error: undefined, stdout: 'my_value\n', stderr: '' }

2. Setting environment variables when running code

You can set environment variables for specific code execution call in the sandbox.

If you had a global environment variable with the same name, it will be overridden.

import { Sandbox } from '@e2b/code-interpreter'

const sandbox = await Sandbox.create()

const result = await sandbox.runCode('import os; print(os.environ.get("MY_VAR"))', {
  envs: {
    MY_VAR: 'my_value',
  },
})

3. Setting environment variables when running commands

You can set environment variables for specific command execution in the sandbox.

If you had a global environment variable with the same name, it will be overridden.

import { Sandbox } from '@e2b/code-interpreter'

const sandbox = await Sandbox.create()

const result = await sandbox.commands.run('echo $MY_VAR', {
  envs: {
    MY_VAR: '123',
  },
})

console.log(result)

// Output example:
// { exitCode: 0, error: undefined, stdout: '123\n', stderr: '' }