I am trying to run an image which I built using buildx and platform wasi/wasm (It works well locally using docker desktop). But when I try to tun it in a server, using the docker ce, wasmtime shim (built runwasi), I get this
for platform in manifest: not found", error="failed to extract layer / operating system is not supported
if you're going to use docker-ce, you need to configure it to use containerd/runwasi manually, I believe. https://docs.docker.com/engine/daemon/alternative-runtimes/
have you done that?
Ralph said:
have you done that?
Yes, I built runwasi to get the shims,
I have this in my containerd's config.toml:
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.spin]
runtime_type = "io.containerd.spin.v2"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.wasmtime]
runtime_type = "io.containerd.wasmtime.v1"
runtime_engine = "/usr/local/bin/containerd-shim-wasmtime-v1"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.wasmedge]
runtime_type = "io.containerd.wasmedge.v1"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.wasmer]
runtime_type = "io.containerd.wasmer.v1"
And the docker daemon config is:
{
"runtimes": {
"io.containerd.wasmtime.v1": {
"path": "/usr/local/bin/containerd-shim-wasmtime-v1"
}
}
}
I have it placed in /usr/local/bin
And I am using this to run :
docker run --runtime=io.containerd.wasmtime.v1 --platform=wasm sangeetakakati/rust-matrix-wasm:wasm
and it is now working?
I noticed that Jorge answered in slack about this
Ralph said:
I noticed that Jorge answered in slack about this
Yes I followed that, It works on my arm64 server in a jetson nano, but not in an aws server i am using with amd64 :(
I am lost for where I am going wrong here to be getting this :
docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/containerd/io.containerd.runtime.v2.task/moby/35b160456e14a1e941a662792b3c69e621d857ef5cfc805fe8256ee4efbe68ee/log.json: no such file or directory): /usr/local/bin/containerd-shim-wasmtime-v1 did not terminate successfully: exit status 101: unknown.
Is this related to the config file for containerd?
yeah, bring that problem to Jorge over in slack. This is really a containerd conversation.
Will using a non-default runtime (io.containerd.wasmtime.v1) introduce some additional overhead in terms of startup time of container or pull time from an oci?
each implementation does its own pulling, so no DEFAULT overhead no, and generally the pulls will be much faster than container images due to size alone
however, there's the manifest pull to locate the layer/component, and then there's the component pull. That's about it.
those are the same with containers, basically
Last updated: Dec 23 2024 at 13:07 UTC