はじめに
Anaconda3をインストールした場合のプロキシサーバの設定を行う方法を書いておきます。
社内などのプロキシサーバ経由で pip
コマンド や conda
コマンドでPythonの各種モジュールをインストールする場合、プロキシ認証を通す ことが必須になりますので、どなたかのお役に立つのでは無いかと思います。
特にハマりやすいOSがWindows10だと思います。ですので、この記事では、Windows10上でターミナルにPowershellを使った場合を書いておきます。
思い込みや間違いなどがあるかもしれませんが、そのような場合はどうか生暖かい目でみていただき、ご容赦をお願いいたします。
Anaconda Powershell Promptを起動します
Windowsスタートボタン ▶️ Anaconda3 (64bit) ▶️ Anaconda Powershell Prompt (anaconda3)
Pythonインタプリタで設定されているプロキシを調べます
> python
>>> import urllib.request
>>> urllib.request.getproxies()
以下のように表示されていれば、プロキシサーバは登録されています。
・・・・・のはずなのですが、私の場合は、接続エラーとなりました。
{'http': 'http://proxy.aaa.bbb.co.jp:8080', 'https': 'https://proxy.aaa.bbb.co.jp:8080', 'ftp': 'ftp://proxy.aaaa.bbb.co.jp:8080'}
- proxy.aaa.bbb.co.jp : プロキシサーバー名
- 8080 : プロキシポート番号
-
ctrl+Z
でPythonインタプリタを抜けます
Anacondaにプロキシ設定をします
Anacondaのルートフォルダに.condarc
ファイルを作成します
.condarc
ファイルが既にある場合には作成する必要はありません
ルートフォルダは以下のパスになります
Windows10の場合
- インストーラで推奨されている ログインユーザーのみ でインストールした場合
C:\Users\[ユーザー名]\Anaconda3
- グルーバルインストールした場合
C:\Program Files\Anaconda3
macOSの場合
私のmacProで調べてみましたが、どうやら、以下がルートディレクトリのようです。
/Applications/anaconda3
.condarc
を作成する場合には以下のようなコマンドを打ちます
> cd C:\Users\[ユーザー名]\Anaconda3
> New-Item hoge
> Rename-Item hoge .condarc
作成した.condarc
に以下のようにプロキシ設定を記入します
proxy_servers:
http: http://id:password@proxy.aaa.bbb.co.jp:8080
https: https://id:password@proxy.aaa.bbb.co.jp:8080
- id : プロキシサーバの認証ID
- password : プロキシサーバの認証パスワード
- proxy.aaa.bbb.co.jp : プロキシサーバー名
- 8080 : プロキシポート番号
設定が反映されているか確認するため、コマンドラインから以下のコマンドを入力します
> conda config --show
proxy_servers 記述のところに設定したプロキシがあれば設定完了です
proxy_servers:
http: http://id:password@proxy.aaa.bbb.co.jp:8080
https: https://id:password@proxy.aaa.bbb.co.jp:8080
プロキシ認証を通ったかテストしてみましょう
pip
コマンドそのものをアップデートしてみましょう
> python -m pip install --upgrade pip
以下のように上手くアップデートできたら、プロキシ認証は通っています
Collecting pip
Downloading https://files.pythonhosted.org/packages/54/2e/df11ea7e23e7e761d484ed3740285a34e38548cf2bad2bed3dd5768ec8b9/pip-20.1-py2.py3-none-any.whl (1.5MB)
|████████████████████████████████| 1.5MB 6.8MB/s
Installing collected packages: pip
Found existing installation: pip 19.2.3
Uninstalling pip-19.2.3:
Successfully uninstalled pip-19.2.3
Successfully installed pip-20.1
アップデートされた pip
コマンドを使ってみましょう
Webアプリケーションフレームワーク Django
をインストールしてみます
> pip install django
こんな風に表示されたら成功です
Collecting django
Downloading Django-3.0.6-py3-none-any.whl (7.5 MB)
|████████████████████████████████| 7.5 MB 3.3 MB/s
Requirement already satisfied: pytz in c:\users\p9370347\anaconda3\lib\site-packages (from django) (2019.3)
Collecting sqlparse>=0.2.2
Downloading sqlparse-0.3.1-py2.py3-none-any.whl (40 kB)
|████████████████████████████████| 40 kB 2.6 MB/s
Collecting asgiref~=3.2
Downloading asgiref-3.2.7-py2.py3-none-any.whl (19 kB)
Installing collected packages: sqlparse, asgiref, django
Successfully installed asgiref-3.2.7 django-3.0.6 sqlparse-0.3.1
Anaconda Navigator の最新化でも試してみましょう
> conda update anaconda-navigator
> anaconda-navigator --reset
万歳!マンセー!うまくいきました。プロキシサーバ越えの沼から脱出できていますね。
## 追記
Windowsでは以下のようにPowershellコマンドを打てば、OSのユーザー環境変数
としてプロキシサーバの設定ができます。私は最近この方法しか使っていません。なお。システム環境変数
として設定するのはWindowsを開発環境として使っている場合にはあまり必要が無いかもしれませんね。
PS> [System.Environment]::SetEnvironmentVariable("HTTP_PROXY","http://id:password@proxy.aaa.bbb.co.jp:8080","User")
PS> [System.Environment]::SetEnvironmentVariable("HTTPS_PROXY","http://id:password@proxy.aaa.bbb.co.jp:8080","User")
以上、ご覧いただきましてどうもありがとうございました。