Skip to content

WSL 上に Kubebuilder 環境構築

WSL 起動

  • Ubuntu インストール・起動
wsl --install -d Ubuntu-24.04

docker インストール

ローカル k8s 環境: kind を動かすために docker をインストールします。

  • docker インストール
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
  • 一度仮想マシンからログアウト
exit
  • Ubuntu をデフォルトのディストリビューションに指定
wsl --set-default Ubuntu-24.04
  • Ubuntu ログイン
wsl
  • docker がインストールされていることを確認
$ docker -v
Docker version 27.5.1, build 9f9e405

make インストール

Kubebuilder によって自動生成される make スクリプトを動かすためにコマンドをインストールします。

  • make インストール
sudo apt update
sudo apt install make
  • make がインストールされていることを確認
$ make --version
GNU Make 4.3
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

kind インストール

ローカル k8s 環境を構築するツールです。

  • kind ダウンロード、インストール
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.14.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind
  • kind がインストールされていることを確認
$ kind version
kind v0.14.0 go1.18.2 linux/amd64

kubectl インストール

  • kubectl ダウンロード、インストール
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
  • kubectl がインストールされていることを確認
$ kubectl version
Client Version: v1.32.1
Kustomize Version: v5.5.0
The connection to the server localhost:8080 was refused - did you specify the right host or port?

go インストール

  • go ダウンロード
wget https://go.dev/dl/go1.23.6.linux-amd64.tar.gz
  • 解凍
sudo tar -C /usr/local -xzf go1.23.6.linux-amd64.tar.gz
  • go のパスを通す
cat << 'EOF' >> ~/.profile
export PATH=$PATH:/usr/local/go/bin
EOF
  • .profile 読み込み
source ~/.profile
  • go がインストールされていることを確認
$ go version
go version go1.23.6 linux/amd64

Kubebuilder インストール

  • Kubebuilder ダウンロード、インストール
curl -L -o kubebuilder "https://go.kubebuilder.io/dl/latest/$(go env GOOS)/$(go env GOARCH)"
chmod +x kubebuilder
sudo mv ./kubebuilder /usr/local/bin/kubebuilder
  • Kubebuilder がインストールされていることを確認
$ kubebuilder version
Version: main.version{KubeBuilderVersion:"4.5.0", KubernetesVendor:"1.31.0", GitCommit:"7153119ca900994b70507edbde59771ac824f2d9", BuildDate:"2025-01-21T08:46:54Z", GoOs:"linux", GoArch:"amd64"}

VSCode への拡張機能導入

  • 拡張機能インストール
code --install-extension golang.go
code --install-extension ms-kubernetes-tools.vscode-kubernetes-tools
code --install-extension esbenp.prettier-vscode

VSCode を開く

code .