CentOS7 + Python 開発環境構築
vagrantで既存のcentos環境を複製した後に、python2, python3 が共存できる環境を pyenvコマンドで構築する手順のメモ Courseraの課題は、一旦は別Windowsに python2の環境構築して乗り切ったのですが、いつも学習・開発に使っている環境でやりたい(そうしないと色々不便でたまらない)ので、そちらの vagrant環境に構築することにしました。
1.既存のVagrant環境からの複製
>d: >cd \vagrant >mkdir python-env >cd python-env >copy ..\centos75\Vagrantfile . ←既存のcentos75環境からVagrantfileをコピー
2. vagrant 環境起動
>vagrant up
まあここまでは自分用のメモ。 Vagrantしばらく使ってないとわすれることがあるので。
3. centos環境にログイン後、git インストール
$ sudo yum -y install git
4. pyenvのインストール。環境設定
$ sudo yum -y install gcc gcc-c++ make git openssl-devel bzip2-devel zlib-devel readline-devel sqlite-devel bzip2 sqlite zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel $ git clone git://github.com/yyuu/pyenv.git ~/.pyenv $ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile $ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile $ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile $ source ~/.bash_profile
最初の行の依存ライブラリのインストールが大事。これやってないとpyenv動かなくってはまります。 私も最初少しはまった後ググって以下の記事を見つけました。ありがとうございます。
で、
$ pyenv install --list
とすると、インストールできる pythonのバージョンリストが表示されるので、
2系として、2.7.15 3系として、3.6.5
をインストールします。
$ pyenv install 2.7.15 Downloading Python-2.7.15.tar.xz... -> https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz Installing Python-2.7.15... Installed Python-2.7.15 to /home/vagrant/.pyenv/versions/2.7.15
続いて、python 3.6.5
$ pyenv install 3.6.5 Downloading Python-3.6.5.tar.xz... -> https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz Installing Python-3.6.5... Installed Python-3.6.5 to /home/vagrant/.pyenv/versions/3.6.5
以上で、Python 2.7.15, 3.6.5 の両環境が使える環境ができました。
5.Coursera Machine Learning用環境の作成
前回、すでにPython3.6環境を素で入れていたWindows環境に入れようとしてはまりまくった CourseraのMachine Learningで使っている GraphLab Create, IPython Notebookの環境を作ります。 Python2 系を使っているようなので、
5.1 pyenvでpython 2.7.15 環境を使う
$ pyenv global 2.7.15
として、2.7.15 を使うようにします。
5.2 pipenvのインストール、pipenvで仮想環境利用
私がherokuを利用する時に使っていて便利だと思っている pipenv コマンドで仮想環境を利用します。
$ pip install pipenv $ mkdir coursera $ cd coursera $ pipenv shell
5.3 Coursera Machine Learning 学習環境の構築
そして、前回Windowsに直接インストーラで入れようとしてはまりまくったGraphLab Createの環境構築。
your registered email, your product key here の所には、それぞれ
https://turi.com/learn/coursera/
で登録して届いた e-mailからの値を入れて実行します。↓
$ pip install --upgrade --no-cache-dir https://get.graphlab.com/GraphLab-Create/2.1/your registered email address here/your product key here/GraphLab-Create-License.tar.gz
すんなりインストール成功。いろんなオンライン学習利用するには、pyenvで環境作っておいた方がよさそうですね。 後は、サーバ上に環境を構築したので、起動時には外部から接続できるように --ip= のオプションを指定して IPython notebookを起動します。
$ ipython notebook --ip=0.0.0.0
5.4 IPython notebook に接続。
ブラウザから、起動した IPython notebookに接続します。私の環境では、192.168.0.24 が vagrantで動いているサーバのIPアドレスなので
で接続。
無事接続に成功しました。これで Courseraの学習がこの環境でできそうです。
ちなみに、IPython(Jupyter)notebookで ipynb 形式で手順書とかを作って githubに入れておくとそのままノートブックの手順が見られるので便利ですね。。
ちなみに、以下は Coursera の 機械学習の第2週、家の価格の予想関連の Notebook(授業部分)です。これに加えて、自分で計算した値とかを答えるという課題が2週の宿題でした。
時間があれば、学んだこととか、課題の回答とかあたりも記事としてあげようと思います。