WSL2でUbuntu 24.04を使用した開発環境を構築しました。Node.js(pnpm利用)とPythonの両方に対応した実践的なセットアップ手順を紹介します。
本記事で構築する環境:
- Ubuntu 24.04 LTS(日本語環境)
- Node.js 20.x(nvm管理)
- pnpm(パッケージマネージャー)
- Python 3.12.7(pyenv管理)
- 開発ツール(Git、リンター、テストツール等)
まずシステム全体を最新の状態にします。
sudo apt update && sudo apt upgrade -y
# 日本語言語パックのインストール
sudo apt install -y language-pack-ja
# ロケール設定
sudo update-locale LANG=ja_JP.UTF-8
sudo timedatectl set-timezone Asia/Tokyo
sudo apt install -y \
build-essential \
git \
curl \
wget \
vim \
unzip
インストールされる主要ツール:
build-essential: C/C++コンパイラ、make等git: バージョン管理curl/wget: ファイルダウンロードvim: テキストエディタsudo apt install -y \
tree \
htop \
jq \
ncdu
各ツールの用途:
tree: ディレクトリ構造の可視化htop: プロセス監視jq: JSON処理ncdu: ディスク使用量分析git config --global user.name "rubber-ducking-rm"
git config --global user.email "rubber_ducking@outlook.jp"
git config --global core.quotepath false # 日本語ファイル名対応
Node.jsのバージョン管理ツールnvmを導入します。
# nvmインストール
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# 設定読み込み
source ~/.bashrc
# バージョン確認
nvm --version
# LTS版のインストール
nvm install --lts
# Node.js 20を指定インストール
nvm install 20
# デフォルトバージョンの設定
nvm alias default 20
# 確認
node -v # v20.x.x
npm -v # 10.x.x
高速で効率的なパッケージマネージャーpnpmを導入します。
# グローバルインストール
npm install -g pnpm
# バージョン確認
pnpm -v
# 設定確認
pnpm config get store-dir # ストアディレクトリ
pnpm config get global-bin-dir # グローバルインストール先
pnpm config get registry # npmレジストリ
# シェル補完の設定
pnpm completion bash >> ~/.bashrc
source ~/.bashrc
pnpmの主な利点:
Pythonビルドに必要なライブラリをインストールします。
sudo apt install -y \
make \
libssl-dev \
zlib1g-dev \
libbz2-dev \
libreadline-dev \
libsqlite3-dev \
llvm \
libncurses5-dev \
libncursesw5-dev \
xz-utils \
tk-dev \
libffi-dev \
liblzma-dev \
python3-openssl
# pyenvインストール
curl https://pyenv.run | bash
# 環境変数の設定
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
# 設定読み込み
source ~/.bashrc
# バージョン確認
pyenv --version
# インストール可能なバージョン一覧
pyenv install --list
# Python 3.12.7のインストール
pyenv install 3.12.7
# グローバルデフォルトの設定
pyenv global 3.12.7
# 確認
python --version # Python 3.12.7
pip --version
# pipを最新版に更新
pip install --upgrade pip
# 基本ツールのインストール
pip install --upgrade setuptools wheel
# リンター・フォーマッター
pip install black flake8 pylint mypy
各ツールの役割:
black: 自動コードフォーマッターflake8: コードスタイルチェッカーpylint: 包括的なコード分析mypy: 型チェッカーpip install pytest pytest-cov
# Jupyter Notebook
pip install jupyter notebook
# IPython(拡張対話型シェル)
pip install ipython
# Node.js環境
node -v
npm -v
pnpm -v
# Python環境
python --version
pip --version
# バージョン管理ツール
nvm --version
pyenv --version
# Git設定
git config --list
# プロジェクト初期化
mkdir my-node-project && cd my-node-project
pnpm init
# パッケージのインストール
pnpm add express
pnpm add -D typescript @types/node
# スクリプト実行
pnpm run dev
# プロジェクト用の仮想環境作成
mkdir my-python-project && cd my-python-project
python -m venv .venv
source .venv/bin/activate
# パッケージインストール
pip install requests pandas
# 開発ツールの実行
black .
flake8 .
pytest
# .bashrcの再読み込み
source ~/.bashrc
# またはシェルの再起動
exec bash
依存パッケージが不足している可能性があります。
# 依存パッケージの再インストール
sudo apt install -y build-essential libssl-dev zlib1g-dev
# PATHの確認
echo $PATH
# 必要に応じて.bashrcに追加
export PNPM_HOME="$HOME/.local/share/pnpm"
export PATH="$PNPM_HOME:$PATH"
Node.jsプロジェクト:
# プロジェクトディレクトリで
echo "20.17.0" > .nvmrc
nvm use # .nvmrcのバージョンを自動適用
Pythonプロジェクト:
# プロジェクトディレクトリで
echo "3.12.7" > .python-version
# ディレクトリ移動時に自動切り替え
# Python依存関係のエクスポート
pip freeze > requirements.txt
# Node.js依存関係はpackage.jsonで自動管理
pnpm install # package.jsonから復元
# システムアップデート
sudo apt update && sudo apt upgrade -y
# Node.jsパッケージの更新
pnpm update
# Pythonパッケージの更新
pip list --outdated
pip install --upgrade <package-name>
# 不要なキャッシュのクリア
pnpm store prune
pip cache purge
WSL2 Ubuntu 24.04で以下の環境を構築しました:
✓ 基本システム設定
✓ Node.js環境
✓ Python環境
この環境があれば、Web開発からデータ分析まで幅広いプロジェクトに対応できます。プロジェクトごとにバージョンを切り替えながら、効率的な開発が可能です。
この記事はWSL2 Ubuntu 24.04、Node.js 20.x、Python 3.12.7を基準としています。