概要
こんにちは!
ROBOT PAYMENT サブスクペイのシステム基盤チームの yoponpon です。
システム基盤チームではアプリケーションやシステムインフラの基礎部分の構築や管理、メンテナンス、性能改善などを行っています。
今回は、Windows 上でのPython, Terraform環境構築手順を記載したいと思います。サブスクペイのインフラはAWSで構成されていて、環境はTerraformでコード管理しており、またLambdaなどでPythonを利用しています。
前提
- こちらの手順はWindows向けの手順となっております。
- こちらの手順は 2023/12 頃時点のものとなります。
WSLの導入
まずはWSLの導入を行います。 ※WSL (Windows Subsystem for Linux) は Windows 上で動作する Linuxの実行環境です。WSL向けに配布されているLinuxディストリビューションが実行可能です。
1. WSLのインストール
Powershellコンソールを起動してインストールを実行します。基本は流れに沿ってインストールできます。
# デフォルトでUbuntuが導入されます。パスワードの設定などを行います wsl --install
2. .bashrcの自動読み込み設定
WSLコンソール(Ubuntu)を起動して以下コマンドを実行します。
sudo vim .bash_profile
以下3行を末尾に追記して :wq で保存します。
if [[ -f ~/.bashrc ]] ; then . ~/.bashrc fi
3. Windows 側のPath設定引き継ぎ解除の設定
WSLコンソール(Ubuntu)を起動して以下コマンドを実行します。
sudo vim /etc/wsl.conf
以下2行を末尾に追記して :wq で保存します。
[interop] appendWindowsPath=false
4. nameserverの設定
WSLコンソール(Ubuntu)を起動して以下コマンドを実行します。
sudo vim /etc/resolv.conf
nameserverを編集して :wq で保存します。
# nameserver xxx.xxx.xxx.xxx #元々の値をコメントアウト nameserver 8.8.8.8 #こちらを追記
5. resolv.confを再生成しない設定
WSLコンソール(Ubuntu)を起動して以下コマンドを実行します。
sudo vim /etc/wsl.conf
以下2行を末尾に追記して :wq で保存します。
[network] generateResolvConf = false
※ちなみにWindows Terminalを利用するとPowershell/CMD/WSLが一つのアプリでコントロールできるのでおすすめです!
Python開発環境の導入
Python開発環境を導入します。複数バージョンの利用の可能性があるためpyenvを導入します。
1. pyenv の導入
WSLコンソール(Ubuntu)を起動して以下コマンドを実行します。
# Ubuntuの更新 sudo apt update sudo apt upgrade # pyenvの依存関係の導入 sudo apt install libssl-dev libffi-dev libncurses5-dev zlib1g zlib1g-dev libreadline-dev libbz2-dev libsqlite3-dev make gcc # pyenvの導入 curl https://pyenv.run | bash
2. パスを通す
vimで .bashrc を開きます。
sudo vim ~/.bashrc
パスを通すコマンドを末尾に追記します。(:wqで保存)
export PATH="$HOME/.pyenv/bin:$PATH" eval "$(pyenv init --path)" eval "$(pyenv virtualenv-init -)"
3. WSLの再起動
PowershellコンソールにてUbuntuの再起動を実施します。
wsl.exe --shutdown
4. Ubuntuにてpyenvインストールを確認する
pyenv --version # pyenv 2.3.26 # 何かしらのバージョンが表示されればOK
Terraformのインストール
最後にTerraformをインストールします。
# Ubuntuの更新 sudo apt update && sudo apt upgrade # tfenvのインストール git clone https://github.com/tfutils/tfenv.git ~/.tfenv echo 'export PATH="$HOME/.tfenv/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile # tfenvのバージョン確認 tfenv --version tfenv 3.0.0-18-g1ccfddb # インストール可能なTerraformのバージョン確認 tfenv list-remote # unzipのインストール sudo apt-get install unzip # Terraformのインストール tfenv install 1.8.5 # デフォルトで使用するバージョンを指定 tfenv use 1.8.5 # インストールの確認 terraform -v # Terraform v1.8.5 # on linux_amd64
参考情報
- WSL を使用して Windows に Linux をインストールする方法
まとめ
上記手順でWSL, Python, Terraformの導入ができました!
WSLはWindowsを使いながらそのGUI上で簡単にLinuxを利用できる便利な機能です。今後もガンガン使っていきたいですね。
We are hiring!!
ROBOT PAYMENTでは一緒に働く仲間を募集しています!!!
speakerdeck.com
www.robotpayment.co.jp