WSL2上のUbuntu 20.04上に分析環境を構築する

· Read in about 3 min · (1050 words) ·

前提条件

項目 内容
使用ディストリビューション Ubuntu 20.04 LTS
Python 環境 Anaconda
PC 環境 SLAT 等必要なハードウェアが揃っていること

更新履歴

日付 内容
2021/08/18 Pyenvの仕様変更に追随 https://github.com/lewagon/dotfiles/pull/90

WSL 2環境を準備

  1. Windowsの機能の有効化を行う: Linux用Windowsサブシステムと仮想マシンプラットフォームを有効化

    • コントロールパネルのWindowsの機能の有効化または無効化から行う
  2. Microsoft StoreからUbuntu 20.04LTSをインストール

  3. WSL 2にバージョンを変更 WSLの一覧は以下のコマンドで確認できる。

    wsl -l -v
    

    このコマンドの結果は例えば以下のようになる。

    NAME STATE VERSION
    * Ubuntu-18.04 Stopped 1
    docker-desktop Stopped 2
    Ubuntu-20.04 Running 2
    docker-desktop-data Stopped 2

    Ubuntu 20.04をWSL 2にするには以下のようなコマンドを実行する。

    wsl --set-version Ubuntu-20.04 2
    

AnacondaでJupyter環境を構築する

Python環境の構築はデータサイエンティストを目指す人のpython環境構築 2016を参考にして、一部のステップをアップデートしています。

アップデートの内容としては、参考記事では旧版のAnacondaがベースとなっているため、サーチパスを変更した結果、pyenvとAnacondaが一部競合を起こしていますが、これは現在のAnacondaでは解決している問題なので、変更を反映しています。また、それに伴い、bashの設定の変更をするためのステップを追加しています。

pyenvをインストールする

git clone https://github.com/yyuu/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init --path)"' >> ~/.echo 'eval "$(pyenv init -)"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc

Anacondaをインストールする

pyenv install -l | grep ana
# 最新版を確認する
pyenv install anaconda3-yyyy.MM
# 先のステップで確認した最新版にする
pyenv rehash
pyenv global anaconda3-yyyy.MM
conda update conda
conda init bash
source ~/.bashrc

dotnet coreをインストールする (オプション)

wget -nv https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo add-apt-repository universe
sudo apt update
sudo apt install apt-transport-https -y
sudo apt install dotnet-sdk-5.0 -y
# 現状の最新版の5をインストールする

venv環境を用意する (オプション)

現在、Pythonのパッケージはconda、pipとなっており、どれを使えるかは状況次第です。ただ、幾つかのパッケージはpip環境しかないこともあり、venv環境もあると便利です。condaとpipの混用は危険であり避けるべきです。

condaとpip:混ぜるな危険 - onoz000’s blog

そのため、Anacondaからvenvを用いて、pip用の仮想環境を取り出します。 venvの仮想環境は以下のコマンドで作成できます。

python -m venv 仮想環境名

このコマンドはcondaのconda createとは違い、カレントディレクトリの下に仮想環境名でディレクトリを作ってその中に仮想環境が作成されます。