MiniCondaとPythonのグローバルインストール

Pythonで作ったプログラムを配布する方法には、exe化する方法とembedabbleを使う方法(こちらに私の記事あり)が有力ですが、本稿ではMinicondaをサーバーやパソコンにグローバルインストールする方法をご紹介します。Mincondaをグローバルインストールすることで、そのサーバー又はパソコンにログインした複数のユーザーに対して共通のPython環境を提供することができます。複数のユーザーで共有されるパソコン、又はサーバーを用意する必要がありますが、開発者のCondaの開発環境からほぼトラブルなく本番環境を提供できる点が魅力です。以下、本稿での作業は全て管理者権限を要します。

Minocondaのインストール

Minocondaのインストールをしようとすると、途中で下記のような画面になると思いますす。ここで推奨のJust Meではなく、その下のAll Usersを選びます。


Pythonのグローバルインストール - minicondaのインストール - All users

次の画面では下記のようなPathになると思います。Userの下ではなく、ProgramDataの下にminicondaがインストールされる点がポイントです。他の選択肢はどれでも大丈夫です。


Pythonのグローバルインストール - minicondaのインストール

グループの作成と管理

次に、コンピュータの管理画面でPython環境を共有するための新しいグループを作成します(管理者権限が必要)。既存のちょうどいいグループが存在する場合は、新しく作成する必要はありません。本稿ではこの工程の詳細を割愛しますが、「Windows グループ新規作成」などと検索してみてください。


Pythonのグローバルインストール - WIndows グループの作成と管理

Minocondaフォルダへの権限設定(アクセス許可)

次にMinocondaをインストールしたフォルダに飛びます。本稿では、”C:\ProgramData\miniconda3″でした。フォルダを右クリックしてプロパティーをクリックの後、セキュリテイーのタブをクリック、続いて編集をクリックします。


Pythonのグローバルインストール - Minocondaフォルダへの権限設定(アクセス許可)

次に編集をクリックすると下記の左側の「miniconda3のアクセス許可」のボックスが開きますので、になりますので、追加をクリック。追加をクリックの後に、右側の「ユーザー、またはグループの選択」の画面になりますので、下段のボックスに先ほど作成したグループの名前を入力します(部分検索ができないので、正確な入力が必要です。本稿ではPython Users)。「名前の確認」を押して正しく検索できると、下の画面のユーザーのようにPC名、サーナー名、ドメイン名の後ろに先ほど作成したグループ名が続く形でグループが特定されます。この状態でOkを押します。


Pythonのグローバルインストール - Minocondaフォルダへの権限設定(アクセス許可)

そうすると、minicondaのアクセス許可のボックスで新しいグループ(本稿の例ではPython Users)が作成されます。新しいグループを選択すると、下段にこのグループのアクセス許可の一覧が表示されるので、フルコントロールと特殊なアクセス許可以外の権限を全て与えます(変更の権限は不要かもしれません)。必要な権限のチェックボックスを入れた後に、適用、続いてOKをクリックします。


Pythonのグローバルインストール - Minocondaフォルダへの権限設定(アクセス許可)

PythonとCondaのシステム環境変数の設定

続いてシステム環境変数を3つ設定します。Windowsの虫眼鏡アイコンから「システム環境変数」を検索すると、下記のような環境変数のボックスが表示されるので、上段のユーザー環境変数ではなく下段のシステム環境変数を選びます(グローバル)。


Windowsシステム環境変数の設定

続いて、Pathを選び3つのpathを新規追加します(上記の画面で編集をクリックすると可能)。1つ目はユーザーがpythonを実行するためのpython.exeが存在するフォルダへのパス(=miniconda3フォルダへのパス)、2つ目と3つ目はユーザーがcondaを実行するためのcondaへのパスです。condaのパスとは具体的には、conda.batとconda.exeがあるフォルダへパスです。以上、例えば次の3つになる方が多いと思います。具体的にはそれぞれの環境でご確認ください。

test.py

C:\ProgramData\miniconda3
C:\ProgramData\miniconda3\Library\bin
C:\ProgramData\miniconda3\Scripts

再起動を経て、システム環境変数の設定は完了です。念のためテストをします。powershellを開き、python –versionとconda –version打ってみてください。それぞれのバージョンが表示されれば、システム環境変数の設定は成功しています。


python --versionとconda --versionの確認

Pythonライブラリーのグローバルインストール

最後にPythonのライブラリーをCondaにグローバルインストールします。Powershellではなく、コマンドプロンプトを使います。Windowsの虫眼鏡アイコンでcmdと押し、コマンドプロンプトを開き、下記のコードを打ちます(activate.batが別の場所にある方はその場所にしてください)。

test.py

call C:\ProgramData\miniconda3\Scripts\activate.bat

うまく行けば、コマンドプロンプトの頭に(base)と表示されていると思います(コマンドプロンプトがAnacondaPromptになりました)。この状態でconda installを実行すると、(base)のconda環境にライブラリーがグローバルインストールされます。

コマンドプロンプトからcondaを起動する方法

以上で、同じPythonのバージョンとPythonライブラリーをどのログインユーザーも共通して使うことができます。

OSレイヤーの勉強法

グループ・ユーザーの作成、フォルダの権限設定(アクセス許可)のような話はComputer Science(情報学部の計算機科学科)を出た方、あるいはインフラやOSレイヤーのエンジニアであれば馴染みがあると思いますが、本ブログの主な読者であるアプリケーションのエンジニアにはほとんどが馴染みがないと思います(私もそうでした)。そのような方には、Google ITサポートプロフェッショナル認定資格の取得をオススメします。Google ITサポートプロフェッショナル認定資格では、Googleの現役エンジニアからインフラ、ネットワークOS、セキュリテイーについて学ぶことができ、本稿で紹介したWindows環境のみならず、Linux環境含めてグループ・ユーザーの作成やフォルダの権限設定を具体的な環境で学ぶことができます。今日も最後まで読んで頂きありがとうございました。