WindowsのWSL2でLinux(Ubuntu)を入れてTerraformの環境構築をした話
この記事でわかること
  • WSL2とは
  • Terraformとは
  • WSL2の有効化/Linuxディストリビューションのインストール方法
  • Terraformのインストール

本記事では、WindowsにてWSL2を使ってUbuntuをインストールして、その上にTerraformの実行環境を構築するまでの流れを説明します。

Windowsで手軽にLinuxを使いたい方、Terraformの環境構築をする方は本記事が役に立つと思います。

用語の説明

WSL2とは

WSLはWindows Subsystem for Linuxの略で、WSLの次のバージョンがWSL2です。
WSL2はWindows上で動作するLinuxのサブシステムです。

WSL2ではハイパーバイザとしてHyper-Vを使って、その上にLinuxを構築するというものです。
Hyper-V単体だとWindows10 Pro以上のエディションでしか利用できなかったのですが、WSL2ではWindows10 Homeなどの安価なエディションでも利用可能です。

Windows上でLinuxを使う方法としては、Virtual Box(ホスト型)やDocker(コンテナ型)などもありますが、WSL2はいちいち起動させる手間もなく、Windows Terminal上で簡単に切り替えて使えるためすごく便利だと感じました。

Terraformとは

IaC(Infrastructure as Code)を実現するツールです。
IaCはサーバやネットワークなどのインフラ構築をコードにより実現するものです。

IaCのメリットは、インフラ構成をコードを見るだけで理解出来たり、コードなのでGitでバージョン管理出来たり、別環境に同じリソースを作る際に簡単に作れたりなどがあります。

TerraformのコードはHCL(HashiCorp Configuration Language)で記述します。

WSL2の有効化・Linuxディストリビューションのインストール

自分で書こうかとも思いましたが、以下に書いてある通りに進めれば問題なくできるので以下をご参照ください。(Windows11の方向けの手順も記載されています。)
WindowsでWSL2を使って「完全なLinux」環境を作ろう!

Linuxのディストリビューションは何でも良いですが、初心者にはUbuntuが一番おすすめです。
どのディストリビューションもカーネル部分は変わらないので、興味があったり使い慣れたものがあれば、他のディストリビューションでも良いです。

上記リンク先で合わせて紹介されているWindowsTerminalが便利なので、インストールしておくことをおすすめします。

Terraformのインストール

WSL2でLinuxを使えるようになったら、次にその上にTerraformの実行環境を準備していきます。

インストールの準備

まずインストールしたLinuxのディストリビューションの中のパッケージの更新をします。

sudo apt update && sudo apt upgrade

sudo apt update:現在有効なパッケージでアップデート可能なものを確認して、パッケージの一覧を更新する。(実際にアップデートはしない。)

sudo apt upgrade:パッケージ一覧を元にアップデートをする。

(必要に応じて)Homebrewのインストール

HomebrewはLinuxやMacで使えるパッケージマネージャです。

Linuxではapt(apt-get)が使えるのでHomebrewがなくてもTerraformはインストールできるため不要ですが、インストールすることもできます。

一応思いつくメリットを以下に挙げておきます。
・(メリットか微妙だけど)ホームディレクトにインストールできる。(sudoが不要で実行可能)
・書籍やWebでのインストール手順でbrewを使用した手順が多い。(Mac利用を前提としていることが多いため)

Homebrewをインストールする場合は、必要な依存関係をインストールします。
(参考サイト:Homebrew Documentation

#Ubuntu、Debianの場合
sudo apt-get install build-essential curl file git

#Fedora、CentOS、Red Hatの場合
sudo yum groupinstall 'Development Tools'
sudo yum install procps-ng curl file git
sudo yum install libxcrypt-compat # needed by Fedora 30 and up

次にHomebrew公式サイトのインストールの下に記載されているコマンドを実行します。
(記載されるコマンドが変わる可能性があるため、公式サイトを見てコピペしてください。)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Terraform(+tfenv)のインストール

tfenvはTerraformのバージョン管理が簡単にできるツールです。
Terraformのインストールやバージョン切り替えなどで使用します。

以下のコマンドでtfenvをインストールします。

#Homebrewをインストールしている場合
brew install tfenv

#Homebrewをインストールしていない場合
sudo apt install tfenv

#インストールできたことの確認(バージョン確認)⇒表示されればインストールできています。
tfenv --version

次にtfenvでTerraformをインストールします。
バージョン切り替えのコマンドも合わせて記載しています。

#Terraformのインストール可能なバージョンの確認
tfenv list-remote

#Terraformのインストール
tfenv install <バージョン>

#Terraformのインストール済みバージョンの確認
tfenv list

#Terraformのバージョン切り替え
tfenv use <バージョン>

テストするところまでは書いていませんが、これでTerraformが使えるようになっています。

Terraformの使い方については、要望があったり機会があれば書きます。
次のステップとして、TerraformでAWSの構築をするのであれば、以下本が参考になります。

参考にしたサイト

WindowsでWSL2を使って「完全なLinux」環境を作ろう!
⇒WSL2の有効化・Linuxディストリビューションの準備

Homebrew公式サイト
⇒Homebrewのインストール

最後に

今回は「WindowsのWSL2でLinux(Ubuntu)を入れてTerraformの環境構築をする」というタイトルで記事を書いてみましたが、いかがだったでしょうか?

本ブログでは、IT関連やゲーム開発、資格取得の最短勉強法についての情報を発信しています。
今後もコンテンツを追加していく予定なので、他にも気になる記事があればぜひご覧いただけると嬉しいです。

記事に対する感想や記事のリクエストについては、お問い合わせからいただけると幸いです。