2-1. 事前準備
今回作成する低レベルコンテナランタイムは、Linuxの機能に強く依存しているソフトウェアです。
すなわち、Linuxの上で動かすことは必須の条件です。
ハンズオンパートをスムーズに進めるため、Dev ContainerかローカルLinuxのどちらかを準備して下さい。
共通準備
作業ディレクトリを作成し、必要なファイルをダウンロードします。
mkdir {好きなディレクトリ名}
cd {好きなディレクトリ名}
curl -fsSL https://raw.githubusercontent.com/logica0419/coding-container-runtime/main/init.sh | sh選択肢1: Dev Container (推奨)
本ワークショップでは、Dev Container設定ファイルを用意しています。
Dev Containerは開発環境をコンテナとして定義し、エディタ/IDEをその中で実行できる仕組みです。
前提条件
- PCにDockerが入っている
- Docker Desktopで大丈夫です
注意
OCI Runtimeにyoukiを指定している場合、構築が失敗してしまいます。
該当者はほぼいないと思いますが、念のため記載しておきます。
VS Codeの場合
公式ドキュメントの通りです。
- Dev Containers拡張機能をVS Codeにインストール
- 作業ディレクトリをVS Codeで開く
- 右下に以下のような通知が出るはずなので「コンテナーで再度開く」をクリック
- 通知が出なければ再度VS Codeを開き直して下さい

- 通知が出なければ再度VS Codeを開き直して下さい
- しばらく待てば環境構築が終わっているはずです
GoLandの場合
公式ドキュメントの通りです。
「IDE 内で Dev Container を起動する」の手順で恐らく大丈夫だと思います。
注意
講師はVS Codeを使用しているため、十分にサポートできない場合があります。
その他のエディタ/IDEの場合
ご自身の使っているエディタがDev Containerに対応している場合、その手順に従って構築して下さい。
注意
講師はVS Codeを使用しているため、十分にサポートできない場合があります。
選択肢2: ローカルLinux
Dev Containersを使わなくとも、今回のコードがLinux上で起動できれば問題ありません。
以下のような手段が取れるかと思います。ご興味があれば挑戦してみて下さい。
用意して欲しい環境
- Linux
- ディストリビューションは何でもOKです
- Goがインストールされている
- Dockerがインストールされている
Windowsの場合
WSLでの構築が最も手軽です。
VS Codeの場合、WSL拡張機能を導入すれば、普段の環境とほぼ差異無く開発ができます。
Macの場合
UTMを使ってLinuxを起動するのがメジャーらしいです。
VS Codeの場合、Remote - SSHなどで直接編集できるようにしておくと良いでしょう。
注意
講師は普段Windows + WSLを使用しているため、十分にサポートできない場合があります。
Linuxの場合
ワークショップで用いるコンピューターのOSが既にLinuxであれば、そのまま使っていただいて大丈夫です。
作業環境のセットアップ
作業ディレクトリで以下のコマンドを実行し、必要なファイルを生成して下さい。
make init
make rootfsセットアップが終わったら、make checkコマンドで確認をお願いします。
以下のように、全ての項目が ✅ になればOKです。
$ make check
---------- 🔍セットアップ状況🔍 ----------
[Linux] ✅ バージョン: GNU/Linux 6.6.87.2-microsoft-standard-WSL2
[cgroup v2] ✅
[Go] ✅ バージョン: go version go1.25.5 linux/amd64
[Docker] ✅ バージョン: Docker version 29.1.3, build f52814d
[make init] ✅ ファイル生成済み
[make rootfs] ✅ ファイル生成済み
---------- 🎉セットアップが完了しています🎉 ----------