PycharmがDocker for Macに対応
今までPycharmでDockerコンテナをインタプリタとして使う際は、Docker for Macではなく、Docker Toolboxを利用することが多かったと思います。
これは、Docker for MacのAPIにアクセスするには、UNIXドメインソケットで通信する必要があることに起因しています(セキュリティ上の理由であえてそのような仕様にしているみたいです。)
一方、過去のPycharmは、UNIXドメインソケットでのAPIアクセスをサポートしておらず、Docker for Macと連携することはかなり面倒な手順が必要なようでした。
しかし、現在ではPycharm側の機能追加により、Docker for Macとの連携がサポートされているようです。
そこで今回はDocker for MacとPycharmを連携させる手順を紹介します。
設定方法
Build, Execution Deployment -> Docker
わざわざいじらなくても、はじめからこのような設定になっているかもしれません。過去にDocker Toolboxを利用していた人で、設定がおかしい場合は、ここで直すことが可能です。
Project -> Project Interpreter
Add Remoteを選択します。
Remote Interpreter(コンテナ)指定
- Serverは先程設定したエンドポイントを選択
- Image nameはインタプリタとなるコンテナのイメージを選択
- interpreter pathは、コンテナ内でpythonコマンドが配置されているパスで、既にコンテナ内でパスが切られているなら、pythonだけで良い。
以上です。
後は、いつもどおりに実行すれば、コンテナ上でアプリケーションを実行させることができます。
おまけ
Docker Toolboxのアンインストール
不要になったDocker Toolboxを削除します。アンインストーラをgithubからcloneし、実行するだけ。
git clone https://github.com/docker/toolbox.git
cd toolbox
sudo osx/uninstall.sh
Virtualboxのアンインストール
Virtualboxのサイトからdmgファイルをダウンロードし、その中にあるuninstallのスクリプトを実行するだけです。