Amazon LinuxでPython3系を使う
2017-09-15Amazon LinuxにPython3系をインストールした時のメモです。
環境
Amazon Linux
Amazon Linuxではインスタンス起動時点でPython2系が使用可能ですが、これから新しく何かを作ろうとするのであれば3系
を使ったほうがよいので、デフォルトでPython3系が動くようにします。
python3
コマンドで3系を動かすという手もありますが、今回は python
コマンドで3系が動くようにします。
Pythonのバージョン管理
pyenv というコマンドラインツールを使用して、Pythonのバージョン管理を行います。
今回の目的は3系を使用するようにすることですが、こちらのツールを使用すればいつでも簡単にデフォルトの2系、または他のバージョンに切り替えることができます。
手順
1. pyenvを使用するために必要なライブラリのインストール
$ sudo yum install gcc gcc-c++ make git openssl-devel bzip2-devel zlib-devel readline-devel sqlite-devel
2. pyenvのインストール、権限・パスの設定
$ sudo git clone https://github.com/yyuu/pyenv.git /usr/bin/.pyenv
$ cd /usr/bin/.pyenv
$ sudo mkdir shims
$ sudo mkdir versions
(任意)php
のexec()
でpythonコマンドを実行する際権限のエラーとなったため、.pyenv
以下の権限を変更
$ sudo chown -R ec2-user:apache /usr/bin/.pyenv
# あるいはapacheがインストールされていない場合は
$ sudo chown -R ec2-user:ec2-user /usr/bin/.pyenv
パス設定
$ vi ~/.bashrc
下記を追記
export PYENV_ROOT="/usr/bin/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH=${PYENV_ROOT}/bin:$PATH
eval "$(pyenv init -)"
fi
$ source ~/.bashrc
3. pythonの任意のバージョンをインストール
インストール可能なバージョンの確認
$ pyenv install --list
(...略...)
2.7.12
2.7.13
2.7.14rc1
3.0.1
3.1
3.1.1
3.1.2
3.1.3
3.1.4
3.1.5
(...中略...)
3.5.4
3.6.0
3.6-dev
3.6.1
3.6.2
3.7-dev
(...略...)
pythonインストール
$ pyenv install 3.6.2
※この時点ではまだデフォルトのバージョン
$ python -V
Python 2.7.12
メインで使用するバージョンの変更
$ pyenv global 3.6.2
$ python -V
Python 3.6.2
元に戻したい場合、他のバージョンを使いたい場合
$ pyenv versions
system
* 3.6.2 (set by /usr/bin/.pyenv/version)
$ pyenv global {使いたいバージョン(system)}
comments powered by Disqus