このプロジェクトについて
gVisorは、実行中のアプリケーションとホストオペレーティングシステムの間に強力な分離層を提供します。これはLinuxに似たインターフェースを実装するアプリケーションカーネルですが、Linuxとは異なり、メモリ安全な言語Goで記述され、ユーザースペースで動作します。gVisorには、DockerやKubernetesと統合するOCI(Open Container Initiative)ランタイムであるrunscが含まれており、サンドボックス化されたコンテナを簡単に実行できます。
これはseccomp-bpfのようなシステムコールフィルターでも、firejailやAppArmorのようなLinux分離プリミティブのラッパーでもなく、従来のVMでもありません。代わりにgVisorは第三のアプローチを採用しています。VMの多くのセキュリティ上の利点を提供しながら、通常のユーザースペースアプリケーションの低リソースフットプリント、高速起動、柔軟性を維持します。アプリケーションがアクセスできるホストカーネル表面を制限しつつ、アプリケーションに期待される機能へのアクセスを提供し、実質的にLinuxを介してLinuxを実装します。
このプロジェクトはx86_64とARM64上で構築されます。ビルド手順には、ラップされたビルドコンテナをBazelで使用する方法、Bazelで直接ビルドする方法、ユニットテストと標準テストスイートの実行、macOS上でのテストが含まれます。標準のGoツールとの互換性のために合成goブランチが維持されており、外部パッケージがNetstackを介したユーザースペースネットワーキングなどのgVisorサブパッケージをインポートできるようになっていますが、そのブランチからのrunscビルドはサポートされていません。
ドキュメント、クイックスタートガイド、技術アーキテクチャはgvisor.devで入手できます。リポジトリには、ガバナンス、採用者、セキュリティポリシー、貢献情報も含まれています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.