7
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

EC2上にvirtualenvでPython3環境構築

Last updated at Posted at 2018-02-10

EC2を立ち上げてPython3系のvirtualenv有効化までの手順をメモ。

正直クラウドや仮想化の時代に複数バージョンを同居させる意味はあまりないので、
python3系だけでいいならPython Japanのやり方が楽でいいですね。

環境
AmazonLinux2 (インスタンス立ち上げ直後で実施)

pyenvインストール

# 関連ライブラリをヤムる
sudo yum update -y
sudo yum -y install git readline-devel zlib-devel bzip2-devel sqlite-devel openssl-devel
sudo yum -y groupinstall "Development Tools"

# pyenvとvirtualenvを持ってくる
git clone https://github.com/yyuu/pyenv.git /home/ec2-user/.pyenv
git clone https://github.com/yyuu/pyenv-virtualenv.git /home/ec2-user/.pyenv/plugins/pyenv-virtualenv

# 環境変数にpyenvを追加(viで書いてもOK)
echo 'export PYENV_ROOT="/home/ec2-user/.pyenv"' >> /home/ec2-user/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> /home/ec2-user/.bash_profile
echo 'eval "$(pyenv virtualenv-init -)"' >> /home/ec2-user/.bash_profile
echo 'eval "$(pyenv init -)"' >> /home/ec2-user/.bash_profile

# bashリロード
source /home/ec2-user/.bash_profile
exec $SHELL -l

Python3.6.4インストール

# インストールできるバージョンの確認
pyenv install -l | less

# 今回はこれを入れる
pyenv install 3.6.4

# virtualenv作成
pyenv virtualenv 3.6.4 v364

# virtualenvが作成されたことを確認
pyenv versions

### 各自、virtualenvを有効化したい場所に移動

# 有効化
pyenv local v364

# プロンプトがこんな感じになったら成功
# (v364) [ec2-user@pyv364]$
# この状態からpipなども使えるようになる

その他メモ

ec2-user以外にもpyenvを使わせたい場合
インストール先を/home/ec2-user/.pyenv/usr/local/.pyenvあたりに変更する。
環境変数の設定は/home/ec2-user/.bash_profileでなく/etc/profileにしておく。

cloneするときにディレクトリを~/.pyenvで指定したら、ホームディレクトリに~という変なディレクトリができていて若干ハマった。

最近だとeasy_install virtualenvというコマンドで一発らしいがそれも試してみたいところ。

以上、お疲れ様でした。

7
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?