python 開発環境構築(AWS)2022版

こんにちはくーるぜろ(@zephel01)です。
AWS ec2, cloud9でのpython設定を行います。
今回設定することで、パッケージのインストール、アップデートがしやすくなります。
前は anyenv で構築しましたが今回は asdf で構築します。
※Amazon linux2で構築をしています。

目次
・asdf インストール
・python3 インストール
・TA-Lib インストール
・時刻設定(日本時間)

ec2-userで動くように設定します。
$ターミナルでの作業になります。
ターミナルは画面の下の部分です

開発環境を構築します。環境構築に必要なソフトをインストールします。

$ sudo yum install -y openssl-devel bzip2-devel zlib-devel readline-devel sqlite-devel glibc-static
$ sudo yum install -y gcc-c++ openssl-devel git readline-devel

asdf をインストールします。

$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.0

環境変数を追加します。

$ cat << 'EOF' >> ~/.bashrc
. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash
EOF

環境変数を読み込みます。

$ exec $SHELL -l

asdf でインストールできる言語などの確認

$ asdf plugin list all

asdf プラグインのインストール

$ asdf plugin-add <name>

asdf の更新

$ # 全部
$ asdf plugin update --all
$ # 指定
$ asdf plugin update <name>

インストール済みプラグインの確認

$ asdf plugin list

asdf でインストール可能な言語のバージョンの確認

$ asdf list all <name>

asdf プラグインのインストール

$ # バージョン指定
$ asdf install <name> <version>
$ # 最新の安定版
$ asdf install <name> latest

使用するバージョンの指定
global (全体に適用)
local (作業フォルダだけ適用)

$ asdf global <name> <version>
$ asdf local <name> <version>

python のインストール

$ # インストールできるpluginの確認
$ asdf plugin list all
$ # プラグイン python を追加
$ asdf plugin-add python
$ # python 3.9.5 をインストール
$ asdf install python 3.9.5
$ # python の バージョンを固定
$ asdf global python 3.9.5

python の確認

$ asdf current
python          3.9.5           /home/ec2-user/.tool-versions

pip でパッケージのインストール

$ pip install ccxt
$ pip install simplejson
$ pip install pybitflyer
$ pip install requests
$ pip install datetime
$ pip install pandas
$ pip install websocket-client

cloud9でta-libのインストール

$ cd ~
$ wget http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz
$ tar xvzf ta-lib-0.4.0-src.tar.gz 
$ cd ta-lib
$ ./configure --prefix=/usr
$ make
$ sudo make install

$ sudo bash -c "echo "/usr/local/lib64" >> /etc/ld.so.conf"
$ sudo /sbin/ldconfig

$ pip install ta-lib

AWS EC2のタイムゾーンを変更します。

$ sudo timedatectl set-timezone Asia/Tokyo

日本時間になっているか確認します。

$ date
Wed May  4 20:22:57 JST 2022

いいなと思ったら応援しよう!