Trivyは、コンテナ、ファイルシステム、Gitリポジトリ、VMイメージ、Kubernetesを対象に、脆弱性や設定ミス、シークレット、SBOMを検出するオープンソースのセキュリティスキャナーです。
google/gvisor
Goで書かれたアプリケーションカーネル。Linuxのシステムコールをユーザー空間で仲介してコンテナをサンドボックス化し、OCIランタイムrunscとして実行できます。
- スター
- 19,738
- フォーク
- 2,025
- 未解決の Issue
- 1,005
- 最終コミット
- 3 時間前
これは何?
gVisorはLinuxライクなインターフェースを実装するアプリケーションカーネルで、コンテナ化されたアプリケーションとホストOSの間に位置します。ユーザー空間で動作し、メモリ安全な言語であるGoで書かれているため、コンテナからアクセスできるホストカーネルの範囲を制限でき、コンテナエスケープの脆弱性による影響を抑えられます。
gVisorにはrunscというOCIランタイムが付属し、DockerやKubernetesと連携します。既存のコンテナツールをほとんど変更せずに、サンドボックス化されたコンテナを実行できます。仮想マシンではなく通常のホストプロセスとして動作し、seccomp-bpfなどのシステムコールフィルタリングとフルVMの中間に位置するものとして設計されています。
このリポジトリは、Linux 5.6以降を搭載したx86_64およびARM64のホスト上で、ビルドコンテナ内からBazelを使ってビルドできます。また、Netstack TCP/IPスタックなどのパッケージを他のGoプロジェクトに取り込むための、Go互換ブランチも用意されています。
主な機能
- 01ユーザー空間でLinuxライクなシステムコールインターフェースを実装
- 02DockerおよびKubernetes向けのOCIランタイムrunscを同梱
- 03メモリ安全な言語であるGoで実装
- 04フルVMを使わず、通常のホストプロセスとして動作
- 05x86_64およびARM64でビルド可能
ユースケース
- 信頼できないコードやサードパーティ製コードをサンドボックス化されたコンテナで実行する
- マルチテナントのKubernetesワークロードに追加の分離レイヤーを設ける
- ユーザー空間のTCP/IPスタックNetstackをGoプロジェクトに取り込む
クイックスタート
- 1
要件を確認します: Linux 5.6以降、Docker 17.09.0以降
- 2
runscを含むリリース用tarballをビルドします
make release-tarball DESTINATION=bin/ - 3
tarballを/usr/local/binに展開します
sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2
使う前に知っておきたいこと
- Linux 5.6以降でのみ実行でき、ビルドできるのはx86_64とARM64のみです。
- ソースからのビルドには、Dockerベースのビルドコンテナまたは手動で設定したBazelツールチェーンが必要です。
- runscはgoブランチからのビルドをサポートしていません。
トピック
よくある質問
- gvisor とは?
- Goで書かれたアプリケーションカーネル。Linuxのシステムコールをユーザー空間で仲介してコンテナをサンドボックス化し、OCIランタイムrunscとして実行できます。 gVisorはLinuxライクなインターフェースを実装するアプリケーションカーネルで、コンテナ化されたアプリケーションとホストOSの間に位置します。ユーザー空間で動作し、メモリ安全な言語であるGoで書かれているため、コンテナからアクセスできるホストカーネルの範囲を制限でき、コンテナエスケープの脆弱性による影響を抑えられます。
- gvisor は無料で使えますか?ライセンスは?
- gvisor は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- gvisor は今もメンテナンスされていますか?
- 活発にメンテナンス中。gvisor の最終コミットは 2026年10月22日 です。
- gvisor は何に使えますか?
- 信頼できないコードやサードパーティ製コードをサンドボックス化されたコンテナで実行する マルチテナントのKubernetesワークロードに追加の分離レイヤーを設ける ユーザー空間のTCP/IPスタックNetstackをGoプロジェクトに取り込む
- gvisor のインストール方法は?
- 要件を確認します: Linux 5.6以降、Docker 17.09.0以降 runscを含むリリース用tarballをビルドします: make release-tarball DESTINATION=bin/ tarballを/usr/local/binに展開します: sudo tar -C /usr/local/bin -xf bin/gvisor.tar.bz2
- gvisor はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/google/gvisor
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Dockerデーモンを使わず、MavenまたはGradleでJavaアプリケーション向けの最適化されたDocker・OCIコンテナイメージをビルドします。
複数のホストにまたがるコンテナ化アプリケーションのデプロイ、スケーリング、管理を行うオープンソースシステム。
Mobyは、コンテナベースのシステムの構築、実行、オーケストレーションに使えるモジュール式コンポーネントを提供する、Dockerのオープンソースコンテナプロジェクトです。
Apple silicon搭載MacでLinuxコンテナを軽量な仮想マシンとして実行する、Apple製のコマンドラインツール。
イメージやHelm chartの保存・署名・スキャンに対応し、RBACとレプリケーションを備えたオープンソースのクラウドネイティブなコンテナレジストリです。