最近terraformをキャッチアップしているので、WSLだと、どのようにセットアップするかなどをまとめる。
準備: VS Codeをwslにアクセスする
Remote Developmentを利用する。
MSのドキュメントまんまでできる
Ctrl+Shift+P
してからRemote-WSL
と検索してWSLに接続できる。
準備: gcp sdkをインストール
この記事だと関係ないけど一応
curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-308.0.0-linux-x86_64.tar.gz tar -zxvf google-cloud-sdk-308.0.0-linux-x86_64.tar.gz cd google-cloud-sdk ./install.sh ./bin/gcloud init --console-only
terraformのインストール (optional)
公式でバイナリのzipを落としてきて解凍してbinに置けば良い
curl https://releases.hashicorp.com/terraform/0.13.5/terraform_0.13.5_linux_amd64.zip -O terraform_0.13.5_linux_amd64.zip unzip terraform_0.13.5_linux_amd64.zip cp terraform /usr/local/bin/
tfenvのインストール
terraformはバージョン依存で前つくったtfファイルが動かないことがあり、バージョン依存回避のためtfenvをインストールすると良いと聞いたので、tfenvを入れる。
公式repoのインストール方法を通りでOK
git clone https://github.com/tfutils/tfenv.git ~/.tfenv echo 'export PATH="$HOME/.tfenv/bin:$PATH"' >> ~/.bash_profile source ~/.bashrc
GKEをtfする
こちらの記事にあるtfファイルを使ってClusterをデプロイします。
terraform init export TF_VAR_project=$GCP_PROJECT terraform plan terraform apply
できた!
sampleアプリをデプロイする
gcloud container clusters get-credentials primary-cluster kubectl create deployment hello-app --image=gcr.io/${GCP_PROJECT}/hello-app:v1 kubectl expose deployment hello-app --type="LoadBalancer" --port 8080
これでhttp通信できているか確認する
terraform destroy
消えてる!
おしまい