#Dagger ๐ค WASM
1 messages ยท Page 1 of 1 (latest)
Let's explore and achieve how we can run dagger in WASM & also dagger pipelines in WASM without docker
You want a completely docker-less & containerd-less environment?
It looks like buildkit can produce wasm, but can it run without docker or containerd? I'm not so sure (https://github.com/moby/buildkit#starting-the-buildkitd-daemon)
Yes docker less would be optional and it's fine, but things should be able to run on wasm only for future use...and to remove the learning curve of docker and other technologies.
Not getting you bro, can you please explain?
Basically, Dagger uses BuildKit and BuildKit does not run in WASM. That would be a big ask of the BuildKit team (different company) without any real benefit. It does not make a lot of sense to compile Go to WASM because Go runs much better natively, as a binary. BuildKit also relies on having a container runtime available for the things it needs to do, see the readme linked above. Dagger would need upstream support in BuildKit.
More generally, WASM is not replacing containers. Rather, it is another runtime that people can target when it makes sense. Is there a specific use-case you are thinking about when asking about WASM support?
Right. Even if some parts of Dagger were adapted to run on WASM (and some parts could), it would not be useful, because Dagger needs direct access to a Linux/OCI system. So even if 90% of dagger were running in the wasm sandbox, you would need the remaining 10% outside the sandbox, to control the underlying Linux system. Making it pointless to sandbox the other 90%.
However there are many other ways Dagger can be useful in the WASM community. All of them rely on daggerizing the WASM tooling (easy) or the WASM runtime itself (moderate).
I can see Dagger treating WASM as another "container" runtime or target architecture for containers. That sounds feasible or already possible?
sure, definitely possible. Probably today with some duct tape; later with first-class API support
Alright got it guys. Thanks for clarity
So in near future dagger will add first class support to target wasm build process? right?
You should already be able to produce WASM binaries in Dagger. This would be almost the same as containerizing your WASM pipeline with a Dockerfile.