2-2. ワークショップの進め方
今の状態
今皆さんの手元にあるテンプレートは、ただ与えられたエントリーポイントを実行するだけのプログラムです。
これにプロセス隔離機能を実装することで、コンテナに仕立てていきます。
プログラムの動かし方
以下のコマンドで実行できます。
設定を変えたければ、リポジトリ直下のconfig.jsonを編集してください。
bash
make run進め方
今回、実装は3つのパートを別々に進められるようになっています。
- Namespace
- 担当範囲:
main.go
- 担当範囲:
- chroot/pivot_root
- 担当範囲:
rootfs.go
- 担当範囲:
- cgroup
- 担当範囲:
cgroup.go
- 担当範囲:
個人で取り組む人
次の章から順次取り組んで下さい。
チームで取り組む人
1人1~2機能を選んで手分けして取り組んでみて下さい。
1人当たり触るのは1ファイルになるはずです。
是非わからないときは助け合って。
cgroupが比較的簡単ですが、どれも新しい概念が出てくると思います。
最後にお互いが書いたコードを合わせて、コンテナを完成させましょう!
もしホスト環境がバグってどうしようもなくなったら
Linux環境を再起動してください。
今回扱うカーネル機能は、使い方を誤ればホストにまで影響を及ぼしてしまいますが、基本的に永続性は無いものです。
再起動すれば大体直ります。