Changelog
Local sandbox template builds
Build of docker image for a new template is now done on user's local machine instead of E2B's cloud. Here's how this new approach improves the DX:
- Allows referencing private docker images
- Manages build cache
- Higher iteration speed
- Prevents uploading
node_modules
orvenv
by accident - Option to use a 3rd party service like GitHub Actions to build the sandbox template.
To build a new template users have to upgrade their CLI to the newest version:
npm install -g @e2b/cli@latest
Find more about building your custom templates here.
Other fixed bugs and improvements
- New: Use local machine's Docker instance when building a custom sandbox template image
- Bug fix: Remove extra whitespace when logging to Docker on Windows
- Bug fix: Make sandbox
kill
command work with the long form of sandbox ID - Bug fix: Fix clock drift on startup
- Bug fix: Add quotes around access token in CLI
- Infra: Use Consul token for scraping metrics
- Infra: Add placeholder stats channel for tasks
- Infra: Remove a template alias when sandbox template is deleted
- Infra: Deny access to Consul by default
- Infra: Don't cleanup nomad logs on restart
- CLI: Improve cross platform compatibility of
e2b template build
command
Product roadmap
See the public roadmap with planned features here.
Week #34
Releasing public roadmap on GitHub
Product roadmap
We released a public roadmap on GitHub to share features and bugs that we are working on. If there is anything you would like to see us add, please open an issue on our GitHub.
Multiple consul and nomad servers
We added an option to manage multiple Consul and Nomad servers simultaneously.
Other fixed bugs and improvements
Week #32
This week we were working on a new CodeInterpreter
API. It's still in its experimental phase, but we love to hear your feedback. We added support for multiple Nomad and Consul servers.
Other fixed bugs and improvements
Faster sandboxes and custom CPU and RAM
Up to 5x faster sandboxes
We implemented huge pages - a feature that allows customers to use 2 MiB chunks of memory instead of 4 KiB chunks, which are the default.
Huge pages are now enabled by default in all newly created custom sandboxes. If a user has an existing custom sandbox, they must rebuild it by calling e2b build
in the directory with the e2b.toml
file.
Custom CPU And RAM
We allowed Pro users to customize the number of vCPUs and RAM size for the sandboxes. The sandbox compute now also has a dedicated page in our documentation.
Pro users can now choose:
- 1 - 8 vCPUs
- 128 MiB - 8 GiB RAM
Other fixed bugs and improvements
- Fix upload path for FC versions
- Add command for killing sandboxes in our experimental SDK
- Release CLI v0.3
- Document process for customizing sandbox compute
- Fix type issue in Python 3.8
Getting started with sandboxes
If you want to try the sandboxes, start here and let us know at hello@e2b.dev if you need any support.
Week #30
We enabled billing on E2B. Read more here about what we charge for and how to monitor your usage. We added the Your Usage page to our Docs to monitor your spending.
Fixed bugs and improvements
Connect cloud storage
You can now connect your storage buckets to the sandbox. Connecting your cloud buckets is useful for filesystem persistence or giving the sandbox access to your data. This is achieved via the FUSE protocol which is supported by all popular cloud buckets: Amazon S3, Google Cloud Storage, and Cloudfare R2.
Get started here.
Fixed bugs and improvements
Week #28
This week a contributor Keegan McCallum from our community built an example of a code interpreter with AutoGen and E2B sandboxes used for the LLM code execution.
Fixed issues:
Merged PRs:
Week #26
Fixed issues:
- JS SDK - Reject promises the correct way
- Python SDK Websocket reconnect sometimes takes unnecessarily long
- Unable to create custom templates with Dockerfiles containing more than ~4.3GB of local data
- Kill WebSocket and refresh threads automatically after
close
or program exit - Using
sandbox.download_file
on an empty file throws error - Building a custom sandbox fails when
e2b.Dockerfile
is in.dockerignore
- Improve SDK error message when API key is missing
Merged PRs:
- Always include dockerfile when building custom sandbox
- Improve API key is missing error message
- Add check for maximum body upload size when building custom sandbox
- Improve SDK performance - Not waiting for unsubscribe where not needed, subscriptions done in parallel now
- Move refreshing and message processing to daemon threads in Python SDK