- google/gvisor: Container Runtime Sandbox
- Google Cloud Platform Blog: Open-sourcing gVisor, a sandboxed container runtime
- virtualbox
- vagrant
プロビジョニングにめっちゃ時間かかります。 メモリをそこそこ割り当てないとビルドに失敗するっぽいです。
$ vagrant up
$ vagrant ssh
vagrant$ docker run -it --runtime=runsc hello-world
vagrant$ ls -l /tmp/runsc/
.create
(goferとsandbox(コンテナ)の起動ログ)と.boot
(sandboxのstrace(sentry?)ログ)、.gofer
(OSのシステムコールログ?)が面白い感じです。
rootファイルシステムとconfig.jsonを用意してrunsc run
を実行します。
vagrant$ cd
vagrant$ mkdir rootfs
vagrant$ sudo docker export $(sudo docker create alpine /bin/sh) | tar xf - -C rootfs
vagrant$ runc spec
vagrant$ sudo runsc run hello-runsc
alpine$ ...
alpine$ ...
alpine$ ...
alpine$ exit
vagrant$ sudo runsc delete hello-runsc