Repolode
bytecodealliance

bytecodealliance/wasmtime

Cranelift 코드 생성기를 기반으로 하며 WASI와 다양한 언어의 임베딩을 지원하는 독립형 WebAssembly 런타임입니다.

스타
18,744
포크
1,879
열린 이슈
888
마지막 커밋
6시간 전

어떤 프로젝트인가요?

Wasmtime은 WebAssembly를 위한 독립형 런타임입니다. WebAssembly는 브라우저 안팎에서 실행되는 코드의 이식 가능한 바이너리 형식입니다. wasmtime CLI를 사용해 명령줄에서 WebAssembly 컴포넌트를 실행하거나, Rust crate 및 C, C++, Python, .NET, Go, Ruby용 바인딩을 통해 애플리케이션에 임베딩할 수 있습니다.

Cranelift 코드 생성기로 모듈을 컴파일하며, 런타임에 JIT 컴파일하거나 사전에 컴파일할 수 있습니다. CPU 및 메모리 사용량을 설정하는 옵션을 제공하고, 게스트 프로그램이 파일이나 시스템 리소스 같은 호스트 환경과 상호작용할 수 있도록 WASI API를 제공합니다. 프로젝트에 따르면 공식 WebAssembly 테스트 스위트를 통과하며 공식 wasm C API를 구현합니다.

Wasmtime은 Bytecode Alliance에서 관리하며 Rust로 작성되었습니다.

핵심 기능

  • 01Cranelift 코드 생성기로 WebAssembly를 런타임에 또는 사전에 컴파일합니다.
  • 02게스트 프로그램이 호스트 리소스에 접근할 수 있도록 WASI API를 제공합니다.
  • 03CPU 및 메모리 사용량을 설정할 수 있습니다.
  • 04WebAssembly 컴포넌트를 바로 실행하는 CLI를 제공합니다.
  • 05Rust, C, C++, Python, .NET, Go, Ruby용 임베딩 바인딩을 제공합니다.

활용 사례

  • 명령줄에서 WebAssembly 컴포넌트 실행하기.
  • Rust 또는 C 애플리케이션에 샌드박스형 WebAssembly 런타임 임베딩하기.
  • WASI 기반 호스트 접근을 통해 신뢰할 수 없는 플러그인 코드 실행하기.

빠른 시작

  1. 1

    공식 설치 스크립트 또는 릴리스 페이지에서 Wasmtime CLI를 설치합니다

  2. 2

    Rust에 WebAssembly WASI 타깃을 추가합니다

    rustup target add wasm32-wasip2
  3. 3

    Rust hello-world 프로그램을 WebAssembly 컴포넌트로 컴파일합니다

    rustc hello.rs --target wasm32-wasip2
  4. 4

    컴파일한 컴포넌트를 Wasmtime으로 실행합니다

    wasmtime hello.wasm

사용 전 알아둘 점

  • 한 줄 설치 스크립트는 Linux와 macOS용으로만 문서화되어 있습니다. Windows 사용자는 릴리스 페이지를 이용해야 합니다.

토픽

자주 묻는 질문

wasmtime은(는) 무엇인가요?
Cranelift 코드 생성기를 기반으로 하며 WASI와 다양한 언어의 임베딩을 지원하는 독립형 WebAssembly 런타임입니다. Wasmtime은 WebAssembly를 위한 독립형 런타임입니다. WebAssembly는 브라우저 안팎에서 실행되는 코드의 이식 가능한 바이너리 형식입니다. wasmtime CLI를 사용해 명령줄에서 WebAssembly 컴포넌트를 실행하거나, Rust crate 및 C, C++, Python, .NET, Go, Ruby용 바인딩을 통해 애플리케이션에 임베딩할 수 있습니다.
wasmtime은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
wasmtime은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
wasmtime은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. wasmtime의 마지막 커밋은 2026년 10월 21일입니다.
wasmtime은(는) 어디에 사용할 수 있나요?
명령줄에서 WebAssembly 컴포넌트 실행하기. Rust 또는 C 애플리케이션에 샌드박스형 WebAssembly 런타임 임베딩하기. WASI 기반 호스트 접근을 통해 신뢰할 수 없는 플러그인 코드 실행하기.
wasmtime는 어떻게 설치하나요?
공식 설치 스크립트 또는 릴리스 페이지에서 Wasmtime CLI를 설치합니다 Rust에 WebAssembly WASI 타깃을 추가합니다: rustup target add wasm32-wasip2 Rust hello-world 프로그램을 WebAssembly 컴포넌트로 컴파일합니다: rustc hello.rs --target wasm32-wasip2 컴파일한 컴포넌트를 Wasmtime으로 실행합니다: wasmtime hello.wasm
wasmtime은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/bytecodealliance/wasmtime

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트