- 概要
- WSLにて現在実行しているものを一覧出力
- WSLにて特定のイメージをインポートする
- Goの環境を作る
- dotnetの環境を作る
- JavaでSpring Bootの環境を作る
- 作った仮想マシンを停止したい場合
- 作った仮想マシンを削除したい場合
- 作った仮想マシンをエクスポートしたい場合
- 参考資料
概要
最近は、docker とかで環境構築したりするのがデフォルトになっているかもしれませんが、WSL2とVSCodeの組み合わせもとても便利なので、個人的にはよく利用しています。
WSL関連の記事を見ていると、大抵ストアからUbuntuをインストールしたりして利用するパターンが多いと思いますが、予め rootfs のイメージを用意しておいて wsl にインポートすることも出来ます。(逆にエクスポートも可能です)
このやり方だと、何個も仮想マシンをサクサク入れることができるので、とても楽です。
以下、自分用のメモですが、いつもやっているやり方です。
今回入れるのは、Ubuntu 21.04 のクラウドイメージを使います。サイズも 450MB くらいなので結構軽い。
イメージはここからダウンロード可能です。
ファイル名に wsl.rootfs と付いているものが、WSL向けのイメージとなっています。
WSLにて現在実行しているものを一覧出力
以下のコマンドで表示できます。
> wsl -l-v
WSLにて特定のイメージをインポートする
wsl コマンドで、インポートするには以下のようにコマンドを実行します。
> wsl --import名前 <イメージファイルが配置される場所><イメージファイルのパス>
例えば、名前を myenv
で、イメージファイルの配置場所を c:\data\wsl\myenv
、イメージファイルのパスが c:\data\rootfs\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz
だとすると以下のようになります。
> wsl --import myenv c:\data\wsl\myenv c:\data\rootfs\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz --version2
Goの環境を作る
最初にインポートして、綺麗な空の環境を用意
> wsl --import golang-env c:\data\wsl\golang-env c:\data\rootfs\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz --version2
インポートが終わったら、起動
> wsl -d golang-env
パッケージの状態を最新に更新
$ apt update -q; apt upgrade -yq
GoのSDKをインストール
$ apt install golang
これで、コンパイラなどはインストールされたので、後は VSCode 側で遊ぶ。
$ code
これで、VSCode がこの仮想マシンに接続した状態で起動するので、後は好きにできる。
dotnetの環境を作る
最初にインポートして、綺麗な空の環境を用意
> wsl --import dotnet-env c:\data\wsl\dotnet-env c:\data\rootfs\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz --version2
インポートが終わったら、起動
> wsl -d dotnet-env
パッケージの状態を最新に更新
$ apt update -q; apt upgrade -yq
dotnetのSDKをインストール
$ wget https://packages.microsoft.com/config/ubuntu/20.10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb $ sudo dpkg -i packages-microsoft-prod.deb $ sudo apt-get update; \ sudo apt-get install -y apt-transport-https && \ sudo apt-get update && \ sudo apt-get install -y dotnet-sdk-5.0
これで、コンパイラなどはインストールされたので、後は VSCode 側で遊ぶ。
$ code
これで、VSCode がこの仮想マシンに接続した状態で起動するので、後は好きにできる。
JavaでSpring Bootの環境を作る
最初にインポートして、綺麗な空の環境を用意
> wsl --import springboot-env c:\data\wsl\springboot-env c:\data\rootfs\hirsute-server-cloudimg-amd64-wsl.rootfs.tar.gz --version2
インポートが終わったら、起動
> wsl -d springboot-env
パッケージの状態を最新に更新
$ apt update -q; apt upgrade -yq
Spring BootのSDKをインストール
$ apt install -y zip unzip $ curl -s"https://get.sdkman.io" | bash $ source"$HOME/.sdkman/bin/sdkman-init.sh" $ sdk install java 11.0.11.hs-adpt $ sdk install springboot $ . ~/.sdkman/candidates/springboot/current/shell-completion/bash/spring
これで、コンパイラなどはインストールされたので、後は VSCode 側で遊ぶ。
$ code
これで、VSCode がこの仮想マシンに接続した状態で起動するので、後は好きにできる。
作った仮想マシンを停止したい場合
以下のように wsl コマンドを実行すると停止されます。
> wsl -t名前
作った仮想マシンを削除したい場合
以下のように wsl コマンドを実行すると削除されます。
> wsl --unregister名前
作った仮想マシンをエクスポートしたい場合
以下のように wsl コマンドを実行するとエクスポートされます。
> wsl --exportエクスポートする仮想マシンの名前 <エクスポート先のパス (拡張子は tar で)>
エクスポートしたファイルは、wsl --import
で普通にインポート可能です。
なので、基本設定したファイルをエクスポートしておくと、いつでもインポート可能になります。
参考資料
過去の記事については、以下のページからご参照下さい。
- いろいろ備忘録日記まとめ
サンプルコードは、以下の場所で公開しています。
- いろいろ備忘録日記サンプルソース置き場