e2b-dev / E2B

Secure open source cloud runtime for AI apps & AI agents
https://e2b.dev/docs
Apache License 2.0
7.02k stars 458 forks source link

Using `e2b build` in Windows miniconda terminal fails #250

Open ValentaTomas opened 11 months ago

ValentaTomas commented 11 months ago

When you use e2b build on Windows with miniconda terminal there seems to be a bug when creating the TAR archive because during the building of the template on our infra the builder cannot find the required files probably because of invalid paths in the archive.

e2b.Dockerfile

# You can use most Debian-based base images
FROM ubuntu:22.04

# Install dependencies and customize sandbox
RUN apt update \
    && apt install sudo
(e2b) PS F:\my\e2b> e2b build --name "yyy"

Preparing sandbox template building (1 files in Docker build context).
Found ./e2b.Dockerfile that will be used to build the sandbox template.
Started building the sandbox template xxx yyy

API error (500): Cannot locate specified Dockerfile: Dockerfile
Build failed, received error while building docker image.
Error:
❌ Building sandbox template xxx yyy failed.
Check the logs above for more details or contact us (https://e2b.dev/docs/getting-help) to get help.

    at qX (C:\Users\User\AppData\Roaming\npm\node_modules\@e2b\cli\dist\index.js:148:84)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async e.<anonymous> (C:\Users\User\AppData\Roaming\npm\node_modules\@e2b\cli\dist\index.js:123:1510

We should check the CLI logic for creating the archive and resolving path so it work for Windows paths too. When using WSL the CLI works normally.

E2B-436

vaibhavard commented 11 months ago

I faced same issue earlier. Rename e2b.Dockerfile to Dockerfile and it works

ValentaTomas commented 11 months ago

@vaibhavard Thanks for the feedback. You too are using Windows, right? We encountered a similar error that happens when you put e2b.Dockerfile into .dockerignore so I'm just checking if your bug was not something else internally.

ValentaTomas commented 3 months ago

This might be solved because we are using local Docker now.