Skip to content

事前準備

今回作成する低レベルコンテナランタイムは、Linuxの機能に強く依存しているソフトウェアです。
すなわち、Linuxの上で動かすことは必須の条件です。

ハンズオンパートをスムーズに進めるため、Dev ContainerローカルLinuxのどちらかを準備して下さい。

共通準備

  1. https://github.com/logica0419/gwc2025-container-runtimeをフォークする
  2. フォークを普段通り自分のPCにクローンする
bash
git clone https://github.com/{あなたのアカウント名}/gwc2025-container-runtime
cd gwc2025-container-runtime

Dev Container (推奨)

本ワークショップでは、Dev Container設定ファイルを用意しています。
Dev Containerは開発環境をコンテナとして定義し、エディタ/IDEをその中で実行できる仕組みです。

前提条件

  • PCにDockerが入っている
    • Docker Desktopで大丈夫です

注意

OCI Runtimeにrunc以外を指定している場合、構築に失敗する可能性があります (youkiでは構築できませんでした)。
該当者はほぼいないと思いますが、念のため記載しておきます。

VS Codeの場合

公式ドキュメントの通りです。

  1. Dev Containers拡張機能をVS Codeにインストール
  2. 右下に以下のような通知が出るはずなので「コンテナーで再度開く」をクリック
    • 通知が出なければ再度VS Codeを開き直してください
      通知
  3. しばらく待てば環境構築が終わっているはずです

GoLandの場合

公式ドキュメントの通りです。
IDE 内で Dev Container を起動する」の手順で恐らく大丈夫だと思います。

注意

講師はVS Codeを使用しているため、十分にサポートできない場合があります。

その他のエディタ/IDEの場合

ご自身の使っているエディタがDev Containerに対応している場合、その手順に従って構築して下さい。

注意

講師はVS Codeを使用しているため、十分にサポートできない場合があります。

ローカルLinux

Dev Containersを使わなくとも、今回のコードがLinux上で起動できれば問題ありません。
以下のような手段が取れるかと思います。ご興味があれば挑戦してみて下さい。

用意して欲しい環境

  • Linux
    • ディストリビューションは何でもOKです
  • Goがインストールされている
  • Dockerがインストールされている

また、上記の準備が終わったら、以下の2つのコマンドを実行して下さい。

bash
make init
make rootfs

Windowsの場合

WSLでの構築が最も手軽です。
VS Codeの場合、WSL拡張機能を導入すれば、普段の環境とほぼ差異無く開発ができます。

Macの場合

UTMを使ってLinuxを起動するのがメジャーらしいです。
VS Codeの場合、Remote - SSHなどで直接編集できるようにしておくと良いでしょう。

注意

講師は普段Windows + WSLを使用しているため、十分にサポートできない場合があります。

Linuxの場合

ワークショップで用いるコンピューターのOSが既にLinuxであれば、そのまま使っていただいて大丈夫です。

セットアップ確認

環境のセットアップが終わったら、make checkコマンドで確認をお願いします。
以下のように、全ての項目が ✅ になればOKです。

console
$ make check
---------- 🔍セットアップ状況🔍 ----------

[Linux] ✅ バージョン: GNU/Linux 6.6.87.2-microsoft-standard-WSL2
[Go] ✅ バージョン: go version go1.25.5 linux/amd64
[Docker] ✅ バージョン: Docker version 29.1.2, build 890dcca
[make init] ✅ ファイル生成済み
[make rootfs] ✅ ファイル生成済み

---------- 🎉セットアップが完了しています🎉 ----------