WSL2で環境構築するときの操作まとめ
目的
WSLでWebアプリ(フロントエンド+バックエンド)のステージング環境を作ろうと思っていろいろ調べたところ、環境を作るという視点でまとめられた記事が見当たらなかったので自分で作ることにした。
ある程度やり方覚えても、ちょうどコマンドとか忘れたころに作業発生するから自分でまとめるのがいい。
やりたいこと
-
- スナップショットを取る(任意の時点の環境のバックアップ・再構築)
-
- distroに名前を付ける
- 同じdistroのイメージを複数起動する
PS C:\Users\Admin> wsl -l -v
NAME STATE VERSION
* Ubuntu-22.04-a Stopped 2
Ubuntu-22.04-b Stopped 2
Ubuntu-22.04-c Stopped 3
前提 (環境に合わせて適宜読み替える)
-
- ベースとなるdistroはUbuntu-22.04を使う
-
- 起動中のdistroはZ:\wsl\distroに保存する
-
- スナップショットはZ:\wsl\snapshotに保存する
- distro = ディストリビューション
环境
-
- Windows 10 Pro 22H2
- Powershell
操作步骤 xù)
# インストールできるdistroの一覧表示 distroが決まっているならskip 今回はUbuntu-22.04を使用する
# wsl -l -o
# distroのインストール
wsl --install -d Ubuntu-22.04 # 上記で表示された一覧のNAME列の文字列を入力
# -> wsl -l -v の一覧でUbuntu-22.04が追加される
# distroの停止
wsl -t Ubuntu-22.04
# -> wsl -l -v の一覧でUbuntu-22.04のSTATEがRunning > Stoppedに変わる
# スナップショットの作成
wsl --export Ubuntu-22.04 Z:\snapshot\Ubuntu-22.04-base.tar
# -> Z:\snapshot\にUbuntu-22.04-base.tarが作成される。
# distroの削除
wsl --unregister Ubuntu-22.04
# -> wsl -l -v の一覧からUbuntu-22.04が消える
# distroのimport & 名前付け
wsl --import Ubuntu-22.04-a Z:\wsl\distro Z:\wsl\snapshot\Ubuntu-22.04-base.tar
# -> Z:\wsl\distroにext4.vhdxが作成される
# distroの起動
wsl -d Ubuntu-22.04-a
# -> wsl -l -v の一覧でUbuntu-22.04のSTATEがStopped > Running に変わる
# おまけ distroのデフォルト設定
wsl -s Ubuntu-22.04-a
# -> wsl -l -v の一覧でUbuntu-22.04-aの先頭に*がつく
如果在通过”wsl -l -o”命令显示的列表中安装distro,无法为distro命名,也无法安装多个相同的distro。因此,我们可以拍摄已安装的distro的快照,并通过给它命名然后导入,以实现同时启动多个Ubuntu-22.04镜像的目的。