概要
PCを新調する度にセットアップしているので、手順をまとめておきます。
WSLとはWindows Subsystem for Linuxの略で、Windows上でLinux基盤を実行可能とする仕組みです。(現在はWSL2が主流です。)
AWSやGCP、Azureなどのクラウドプラットフォームでは、アプリケーション稼働環境としてLinuxが採用されるパターンが非常に多いです。
(OSがそもそも軽い、起動が早い、ハードウェアスペックを必要最小限で構築できる、コンテナアプリケーションに向いている、アプリを稼働させるためのミドルウェアが豊富など。)
アプリケーション稼働環境がLinuxなので、開発環境もLinuxであった方がベターです。
また、WindowsでDockerを使用する際によく利用されていたDocker Desktopが2021年9月に有料化となったため、無償でDockerを使用可能な環境としてもWSL2は選択肢に挙がります。
当記事ではWindows上へWSL2を導入し、以下のような開発環境を構築します。
WSL2(Ubuntu)導入
前提
Windows10の場合、WSL2を導入する上でOSのバージョンが一定以上必要です。
「winver」コマンドを実行し、下記バージョン以上であることを確認してください。
※バージョンが古い場合はWindowsアップデートの実行をお願いします。
※当記事はWindows11で実施した際の記録です。
Windows10:OSビルド 18362 以降
※Window11の場合はバージョン不問
Windows10の場合のみ「Windowsの機能の有効かまたは無効」ウィンドウを開き、「Linux用Windowsサブシステム」と「仮想マシンプラットフォーム」へチェックを入れて「OK」を選択します。(要PC再起動)
↓2ヵ所チェックしてOKを選択します。
WSL2、Ubuntu導入
①PowerShellを管理者権限で実行します。
②下記コマンドを実行し、WSL2とUbuntuをインストールします。
wsl --install -d Ubuntu-20.04
↓実行後。
③PCを再起動します。
※再起動後にユーザ情報の入力がもとめられた場合は入力し、「3.Ubuntuユーザ設定」をスキップします。(sudo権限の追加は必要かも)
④再起動後、下記コマンドを実行してUbuntuが導入され、WSLのVERSIONが2である事を確認します。
※エラーが発生した場合は②~③を再実行してみてください。
wsl -l -v
⑤インストール完了後は、スタートメニューにUbuntuアイコンが追加されているため、アイコンを開く事でUbuntuを起動出来ます。
↓開くとrootユーザでログインされます。
※「3.Ubuntuユーザ設定」作業完了後はデフォルトユーザでログインされます。
なお、WSL2はWindowsのドライブをマウントしているので、エクスプローラーから下記アドレスを入力することでUbuntuのディレクトリへアクセスする事も可能です。
\\wsl$\
⑥下記コマンドを実行して、パッケージを最新化します。
sudo apt update
sudo apt upgrade
Ubuntuユーザ設定
①下記コマンドを実行して、Ubuntuへユーザを追加し個人ディレクトリを作成します。
sudo adduser <USER_NAME>
※例としてrnagaiというユーザを追加します。
②パスワードの入力を求められるので入力します。
③パスワード再入力、その他設定をEnter押下でデフォルト設定、最後にYを入力でOKです。
④引き続きrootユーザのまま、下記コマンドを実行して追加したユーザへsudo権限を付与します。
sudo usermod -aG sudo <USER_NAME>
⑤下記コマンドを実行して、ユーザが正しく追加されている事を確認します。
id <USER_NAME>
⑥一度Ubuntuを終了し(ウィンドウを閉じればOK)、PowerShellより下記コマンドを実行してUbuntuのデフォルトユーザを変更します。
<WSLのディストリビューション> config --default-user <USER_NAME>
↓以下のように実行します。
ubuntu2004 config --default-user rnagai
※<WSLのディストリビューション>は、下記コマンドで確認可能です。
wsl -l -v
⑦再度Ubuntuを開くと、追加したユーザでログインされるようになります。
また、sudoコマンド実行時は設定したパスワードの入力を求められます。
AWS CLI導入
こちらの記事をご参照ください。
Git導入
こちらの記事をご参照ください。
VSCode導入&WSL2(Ubuntu)マウント
こちらの記事をご参照ください。
Docker導入
こちらの記事をご参照ください。
コメント