戻る 目次へ 佐々木将人の個人ページへ

VirtualBoxを使わずWSL2とUbuntuとDockerを使う話

 これは以前の「WSL2+docker」で動かしていた方法です。
 この方法の場合,WSL2のターミナルの色遣いが見にくく,特に黒地に青文字とかよくわからないし,何かの設定をすると改善はされそうなんですが,それを調べるのも面倒なので,今はVirtualBox入れてそれでFreeBSD動かして,そこにerlangとLFE入れて動かすという対応をしています。

 LFEのWindows用のバイナリーは用意されていません。
 そこでWSL2でUbuntuを走らせて動かします。
 そしてUbuntuを使ったのですが,git clone以下の手順だとmake compileに失敗します。
 というので,dockerを使います。

WSL2のインストール

(参考)https://www.techceed-inc.com/engineer_blog/6671/
・左下windowsボタンから設定→詳細設定と進み,下の方でバージョンとOSビルドがそれぞれ指定されているもの以降であることを確認する
・左下windowsボタンを右クリックして,「windows PowerShell(管理者)」を選択する
> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
 (WSLの有効化)
> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
 (仮想マシンの有効化)
・windowsの再起動
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msiから「Linuxカーネル更新プログラム」をダウンロード
・ダブルクリックして実行
・左下windowsボタンを右クリックして,「windows PowerShell(管理者)」を選択する
> wsl --set-default-version 2
 (WSLの既定バージョンを2へ設定)

Linuxをインストール

・左下windowsボタンからMicrosoft Storeが選べると思う
・好きなLinuxを選ぶ(まあ検索ボタンで検索した方がたいてい早そう)
・インストールする
(以下ubuntuを選んだと仮定)
・起動すると最初にいろいろセッティングするので待つ
・ユーザー名を入れる
・パスワードを入れる

Dockerをインストール

> sudo apt-get update
> sudo apt-get upgrade
 (システムを最新にする……おまじないともいう)
> sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
 (Dockerに必要なファイルの取得)
> curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
 (DockerのGPG鍵を登録)
> sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
 (DockerのPPAを登録)
> sudo apt-get update
> sudo apt-get install docker-ce docker-ce-cli containerd.io
 (Dockerのインストール)
> sudo usermod -aG docker (さっき入力したユーザー名)
 (sudoなしでdockerコマンドを使えるように)
> exit
> docker -V
(Dockerが動作するかどうか確認をする)
> sudo service docker start
 (Dockerデーモン起動)

lfeのインストール

(参考)https://qiita.com/masato/items/8fcd61bda7934d28230b
> docker pull lfex/ubuntu
(ファイルのインストール)
> docker run -i -t lfex/ubuntu lfe
(実行……以後,dockerをいったん終わらせた後は
 > sudo service docker start
 の上でこの行を,
 dockerを終わらせてなければこの行だけで実行できる。)

(2021.10.20. 初版)
(2023.10.27. 改訂)

戻る 目次へ 佐々木将人の個人ページへ