Wasmtime
Docs
概要
CLI のインストール
$ cargo install wasmtime-cli
warning.icon
サンドボックス上で実行されるため、shell とは異なるファイルシステムツリーが提供される 回避策
実行時に --dir を使ってアクセスできるディレクトリを明示する必要がある
code:sh
$ wasmtime --help
...
Grant access of a host directory to a guest.
If specified as just HOST_DIR then the same directory name on the host is made
available within the guest.
If specified as HOST::GUEST then the HOST directory is opened and made available as
the name GUEST in the guest.
code:sh
$ wasmtime --dir . target/wasm32-wasip1/debug/grep-wasi.wasm file src/main.rs
その他、以下のような値も Wasmtime が動作している環境から切り離されて提供されている
環境変数とその値
code:rs
use std::env;
fn main() {
for (key, value) in env::vars() {
println!("{key}: {value}");
}
}
cargo run で実行した場合: 設定されている環境変数の一覧が表示される
code:sh
$ cargo run
CARGO_HOME: /.../.cargo
CARGO_MANIFEST_DIR: /.../grep-wasi
...
Wasmtime 上で実行した場合: 何も表示されない
code:sh
$ wasmtime target/wasm32-wasip1/debug/process-list.wasm