2018年1月25日木曜日

EC2でPython 3.6を使うときにpip-3.6をpip3コマンドで実行できるようにする方法

EC2のAmazon Linuxで、pip3コマンドを使えるようにするためには、まずyumでインストールをします。

$ sudo yum install python36-pip

正常に終了。念のため、このままだとコマンドが実行できないことを確認してみます。

$ pip3 -V
-bash: pip3: command not found

予定通り、そんなコマンドないパターン。

いろいろなサイトをざっくりしか読んでいないと、おかしいなと思ってついやってしまう再インストール。

$ sudo yum install python36-pip
Loaded plugins: priorities, update-motd, upgrade-helper
24 packages excluded due to repository priority protections
Package python36-pip-9.0.1-1.24.amzn1.noarch already installed and latest version
Nothing to do

上記のようにもう入っていると怒られます。というのがインフラを苦手とする自分の様な人にありがちなことだと思います。失礼か。

では、ここからは本題のpip3コマンドにする方法です。まずは、whichコマンドでpipがある場所を確認。

$ which pip
/usr/bin/pip

これにより、pipは「/usr/bin/pip/」にあることがわかったので、同じ場所に3.6もあるかgrepして確認します。

$ ls -l /usr/bin/ | grep pip
-rwxr-xr-x   1 root root       2804 Sep 10  2014 lesspipe.sh
lrwxrwxrwx   1 root root         21 Jan 15 11:42 pip -> /etc/alternatives/pip
-rwxr-xr-x   1 root root        290 Aug 11  2016 pip-2.7
-rwxr-xr-x   1 root root        370 Aug 26 03:59 pip-3.6

インストールしたpip-3.6がちゃんと入っていることを確認したら、pip3コマンドとして使えるようにシンボリックリンクを貼ってあげると、無事に使えるようになります!

$ sudo ln -s /usr/bin/pip-3.6 /usr/bin/pip3
$ pip3 -V
pip 9.0.1 from /usr/lib/python3.6/dist-packages (python 3.6)

めでたし、めでたし!

macOSでminikubeをインストールしようとしたら書き込みエラーになった

ローカル環境でKubernetesを使えるようにしようと環境構築中にエラーが 下記が今回のエラーで書き込みできない感じのメッセージが出ています。  $ brew install minikube Updating Homebrew... Error: The following ...