WSL2を構築したメモ
概要
やったことをメモるだけです。
Docker for windowsをWSL2側で利用する
ディストリビューション用意
複数ディストリビューションを管理できるっぽいけど今回はWindows StoreからUbuntu20.04をインストール。
Windows Terminalもインストールしておくと非常に捗る。
もしデフォルトのユーザーを変えたければ
ubuntu config --default-user [user_name]
Ubuntuを最新にする
$sudo apt-get update $sudo apt-get upgrade
anyenvを入れる
# Git入ってなかったら入れてください $git clone https://github.com/anyenv/anyenv ~/.anyenv $echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bashrc $exec $SHELL -l $anyenv init $echo 'eval "$(anyenv init -)"' >> ~/.bashrc $anyenv install --init # anyenv update したい場合 $mkdir -p ~/.anyenv/plugins $git clone https://github.com/znz/anyenv-update.git ~/.anyenv/plugins/anyenv-update # ↑でPlugin入れたら今後は以下のコマンドだけでOK $anyenv update # あとは好きなxxenvをインストールする
rbuenvを利用する場合
いろいろ下準備が必要
$anyenv install rbenv $exec $SHELL -l # Railsで必要なやつも入れておく(gem構造によってはこれでも足りない、nodeも必要になる?) $sudo apt-get install -y make gcc libssl-dev libreadline-dev zlib1g-dev build-essential libxml2 libxml2-dev libcurl4-openssl-dev libmysqlclient-dev # このプラグインが無いとrubyがビルドできない? $git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build $rbenv install xxx $rbenv rehash $rbenv global xxx
GCPのgcloudコマンドを使えるようにする
https://cloud.google.com/sdk/docs/quickstart-linux のLinux用を利用する
$anyenv install pyenv $exec $SHELL -l # 執筆段階では3.xはバージョン制限があるので、2.x系にする $pyenv install 2.7.18 $pyenv global 2.7.18 # * 64bit版 gcloud $curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-308.0.0-linux-x86_64.tar.gz $tar zxvf google-cloud-sdk-308.0.0-linux-x86_64.tar.gz google-cloud-sdk $./google-cloud-sdk/install.sh # 匿名の利用状況?を送信してよいかどうか効かれるので(y or N)で回答 # あとはパスを通すだけ $exec $SHELL -l # 以下のコマンドはあえてコピペで動かないようにしています、確認し削除してください $rhogem -rf google-cloud-sdk-308.0.0-linux-x86_64.tar.gz $gcloud init # ターミナルの指示に従ってください $gcloud components update # もしWindows側でgcloudをインストールしている場合は警告が出ますので任意で削除してください(削除推奨)
Docker for windows を使う場合の注意点
各個人によって必要だったり必要なかったりする
# ファイル所持者がrootになる可能性があるので、デフォルトユーザーをrootにするか所持させる $chown -R hoge:hoge ... # PermissionErrorになった場合はこれ、他にも権限周りのErrorで使えるかも $chmod -R +x ...
※ 調べてみると回避策はいろいろあるみたいですが直ぐにできそうに無いなと言う感じはします。