BETA

AWS Cloud9でvirtualenvを使う方法

投稿日:2020-02-11
最終更新:2020-02-26

AWS Cloud9でvirtualenvを使う際は、ちょっとした設定の変更が必要です。
AWS Cloud9でvirtualenvを使いたいという需要はあまり無いように思いますが、私は使いたいので設定変更の手順を書きました。

インポートエラー

numpyとpandasを使いたかったのですが、Cloud9のRunnerで実行するとimportエラーで実行できませんでした。

PYTHONPATHにvirtualenvのパスが無いことが原因

[Preferences]->[Python Support]内の「PYTHONPATH」はデフォルトの状態では、下記のような設定になっています。ここにvirtualenvのPYTHONPATHを追加します。

"@path":"/usr/local/lib/python3.4/dist-packages:/usr/local/lib/python3.5/dist-packages:"  

virtualenvで使用しているPYTHONPATHを確認する

sys.pathを出力して確認します。
Cloud9の画面下方のターミナルウィンドウより下記手順で確認しました。
最後方の'/home/ec2-user/workspace/lib/python3.7/site-packages'がvirtualenv用のパスです。

cd workspace/  
$ source bin/activate  
$ python  
Python 3.7.4 (default, Dec 13 2019, 01:02:18)   
[GCC 7.3.1 20180712 (Red Hat 7.3.1-6)] on linux  
Type "help", "copyright", "credits" or "license" for more information.  
>>> import sys  
>>> sys.path  
['', '/home/ec2-user/workspace/lib64/python37.zip', '/home/ec2-user/workspace/lib64/python3.7', '/home/ec2-user/workspace/lib64/python3.7/lib-dynload', '/usr/lib64/python3.7', '/usr/lib/python3.7', '/home/ec2-user/workspace/lib/python3.7/site-packages']  
>>>   

PYTHONPATHにvirtualenvのパスを追加する

[Preferences]->[Python Support]内の「PYTHONPATH」に、virtualenvのパスを追加します。

再度Runnerを実行する

今度は上手くインポートされました。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

役に立つことから立たないことまで日々のアウトプットを綴る

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう