Pythonをオフラインでインストールする

このガイドは、インターネットに接続されていない mindzieStudio Enterprise ServerにPythonをインストールする方法を示します。インターネットに接続されているパソコンで必要なファイルをすべてダウンロードし、フォルダーをサーバーにコピーしてからそのフォルダーからインストールします。サーバー上の操作はインターネット接続を必要としません。

所要時間は約30分、最後にサーバーの再起動が1回必要です。

Pythonが必要な場合

Pythonは以下の機能のためにのみ必要です:

機能 内容
Pythonエンリッチメント Pythonで書かれたカスタムデータ変換
Pythonスクリプトアクション Pythonで書かれた自動化された統合、エクスポート、通知
AI Case Predictionエンリッチメント ケースをもとに予測モデルをトレーニングし、予測をデータに追加

これらの機能を使用しない場合は、Pythonのインストールは不要です。

概要

インターネット接続のあるパソコンで mindzieStudioサーバーで
1. オフライン用フォルダーを作成 6. すべてのユーザー用にPythonをインストール
2. Pythonインストーラーをダウンロード 7. Pythonのインストールを確認
3. 必要なパッケージをリストアップ 8. フォルダーからパッケージをインストール
4. パッケージをダウンロード 9. サーバーを再起動
5. フォルダーをサーバーにコピー 10. mindzieStudioでPythonを確認

必要なもの

  • インターネット接続のあるパソコン(Windows、macOS、Linuxのいずれか)、Pythonがインストールされていること。最新のPythonバージョンであれば何でも構いません。ファイルのダウンロードにのみ使用します。
  • サーバーにフォルダーをコピーする方法(USBドライブ、ファイル共有、組織で承認されたファイル転送方法など)
  • mindzieStudioサーバー上の管理者権限アクセス
  • サーバー上の最低500MBの空きディスク容量

Pythonバージョンの選択

Python 3.13 (64-bit) を使用してください。本ガイドではすべての例でPython 3.13を使用しています。

すべての手順で同じPythonバージョンを使う

Pythonパッケージは特定のPythonバージョン用に作られています。ステップ4でダウンロードするパッケージは、ステップ6でサーバーにインストールするPythonのバージョンと一致していなければなりません。異なるバージョンを選んだ場合は、ステップ4のコマンド内の3.13を変更してください。

パート1:インターネット接続のあるパソコンで

ステップ1: オフライン用フォルダーを作成する

python-offlineという名前のフォルダーを作成し、その中にpackagesフォルダーを作成します。PowerShellで実行:

New-Item -ItemType Directory -Force -Path C:\python-offline\packages

ダウンロードするすべてのファイルはこの一つのフォルダーに保存します。

ステップ2: Pythonインストーラーをダウンロードする

  1. Python Releases for Windows ページにアクセス
  2. 最新の Python 3.13 リリースを探す
  3. Windows installer (64-bit) をクリック。ファイル名は例として python-3.13.15-amd64.exe のようになります
  4. ファイルを C:\python-offline に保存

Windowsインストーラー (64-bit) をダウンロードすること

PythonインストールマネージャーWindows埋め込みパッケージ は使用しないでください。インストールマネージャーはインストール中にPythonをダウンロードしますが、インターネット接続がないサーバーでは失敗します。埋め込みパッケージにはpipが含まれていませんが、pipはパッケージのインストールで必要です。

ステップ3: 必要なパッケージをリストアップする

C:\python-offlinerequirements.txtというテキストファイルを作成し、パッケージ名を1行に1つずつ記述します。

必ずpandasnumpyを含めてください。PythonエンリッチメントやPythonスクリプトアクションはこれらを必要とします。スクリプトがウェブサービスや社内のAPIを呼び出す場合はrequestsも含めてください。

pandas
numpy
requests

次に、スクリプトで使用しているその他のパッケージを行ごとに追加します。Pythonコードのimport行を確認してください。インポート名とパッケージ名が異なる場合があります:

コードでの名前 requirements.txtに追加する行
import openpyxl openpyxl
import sklearn scikit-learn
import dateutil python-dateutil
import yaml PyYAML
import pyodbc pyodbc
import sqlalchemy sqlalchemy

他のマシンですでに動作しているスクリプトがある場合

別のサーバーやPCでPythonスクリプトが正しく動作している場合は、手動でリストを書く代わりにそのマシンの正確なパッケージバージョンのリストを利用できます。そのマシンで以下を実行:

python -m pip freeze > requirements.txt

このrequirements.txtファイルを使ってください。インストールされている各パッケージの正確なバージョンがリストされているため、オフラインサーバーも同じバージョンで動作確認できます。

ステップ4: パッケージをダウンロードする

PowerShellを開き、以下を実行:

cd C:\python-offline
python -m pip download -r requirements.txt -d packages --only-binary=:all: --platform win_amd64 --python-version 3.13

各オプションの説明:

オプション 目的
-r requirements.txt リスト内のすべてのパッケージとその依存関係をダウンロード
-d packages ダウンロードファイルをpackagesフォルダーに保存
--platform win_amd64 各パッケージの64ビットWindows版をダウンロード
--python-version 3.13 Python 3.13用にビルドされたパッケージをダウンロード。異なるバージョンの場合は変更してください
--only-binary=:all: インストール済みバイナリのみをダウンロード。サーバーでのビルド不要

これらのオプションにより、ダウンロードに使うパソコンは必ずしもWindowsや同じPythonバージョンである必要はありません。

コマンド実行終了時にSuccessfully downloadedとパッケージ名が表示されます。packagesフォルダーにはpandas-3.0.5-cp313-cp313-win_amd64.whlのような.whlファイルが入っています。cp313はPython 3.13用にビルドされていることを示します。

ステップ5: フォルダーをサーバーにコピーする

python-offlineフォルダー全体をサーバーにコピーします。このガイドではサーバーのC:\python-offlineにコピーすることを想定しています。

フォルダー構成は以下のようになります:

C:\python-offline\
    python-3.13.15-amd64.exe
    requirements.txt
    packages\
        numpy-2.5.3-cp313-cp313-win_amd64.whl
        pandas-3.0.5-cp313-cp313-win_amd64.whl
        requests-2.34.2-py3-none-any.whl
        ... その他の .whl ファイル

バージョン番号は異なる場合があります。

パート2:mindzieStudioサーバーで

ステップ6: すべてのユーザー用にPythonをインストールする

mindzieStudioは自身のWindowsアカウントで動作し、あなたのユーザーアカウントではありません。そのため、すべてのユーザー用にインストールされシステムPATHに追加されたPythonのみ使用できます。

インストーラーのウィンドウからインストールするか、PowerShellの1行コマンドでインストールします。

オプションA:インストーラーウィンドウ

  1. python-3.13.15-amd64.exeを右クリックし、管理者として実行を選択
  2. 最初の画面でAdd python.exe to PATHにチェックを入れ、Customize installationをクリック
  3. Optional Features画面でpipがチェックされていることを確認し、Nextをクリック
  4. Advanced Options画面で:
    • Install Python 3.13 for all usersにチェック。インストール先がC:\Program Files\Python313に変わる
    • Add Python to environment variablesがチェックされていることを確認
    • Downloadで始まるすべてのオプションは外す(これらはインターネット接続が必要)
  5. Installをクリックし、インストール完了後にCloseをクリック

オプションB:PowerShellコマンド

PowerShellを管理者として開き、ダウンロードしたインストーラー名で以下を実行:

Start-Process -FilePath "C:\python-offline\python-3.13.15-amd64.exe" -ArgumentList "/quiet InstallAllUsers=1 PrependPath=1 Include_test=0" -Wait

InstallAllUsers=1はすべてのユーザーにインストール、PrependPath=1はPythonをシステムPATHに追加します。コマンドはウィンドウを表示せず処理完了まで待機します。

ステップ7: Pythonのインストールを確認する

開いているPowerShellウィンドウはすべて閉じ、新しく管理者としてPowerShellを開きます。新しいウィンドウでPATHの変更を認識します。

以下を実行:

python --version
where.exe python

期待される出力例:

Python 3.13.15
C:\Program Files\Python313\python.exe

PythonはProgram Filesにある必要がある

where.exe pythonの最初の行はC:\Program Files\Python313\python.exeを指している必要があります。もしC:\Users\以下のフォルダーを指していれば、PythonはあなたのアカウントにのみインストールされていてmindzieStudioは利用できません。その場合は設定 > アプリからアンインストールし、ステップ6の手順ですべてのユーザー用にインストールを選んでインストールし直してください。

ステップ8: フォルダーからパッケージをインストールする

同じ管理者PowerShellウィンドウで以下を実行します:

python -m pip install --no-index --find-links C:\python-offline\packages -r C:\python-offline\requirements.txt

--no-indexはpipがインターネットに接続しないよう指定し、--find-linkspackagesフォルダー内からインストールするよう指示します。

コマンドはSuccessfully installedと共にパッケージ名を表示して終了します。

管理者としてこのコマンドを実行すること

PowerShellが管理者でない場合、pipはDefaulting to user installation because normal site-packages is not writeableというメッセージを表示し、個人のプロファイルにインストールします。mindzieStudioはそこからはパッケージを使えません。このメッセージが出たら管理者としてPowerShellを開き直して、再度コマンドを実行してください。

パッケージが読み込めるか確認します:

python -c "import pandas, numpy; print('pandas', pandas.__version__, 'numpy', numpy.__version__)"

期待される出力(バージョン番号は異なる場合があります):

pandas 3.0.5 numpy 2.5.3

ステップ9: サーバーを再起動する

Windowsサーバーを再起動します。

mindzieStudioは起動時にPythonを確認し、更新されたシステムPATHを見る必要があります。これを確実にするためにサーバーの再起動が必要です。mindzieStudioのアプリケーションプールの再起動だけでは不十分です。

ステップ10: mindzieStudioでPythonを確認する

Enterprise Configurationツールを確認する

  1. サーバーでEnterprise Configurationツールを開く
  2. Server Setupタブに移動
  3. PythonセクションでStatusにPythonのバージョン付きで「Installed」(例 Installed (3.13.15))と表示されていることを確認

テスト用エンリッチメントを実行する

  1. mindzieStudioのプロジェクトでエンリッチメントノートブックを開く
  2. Pythonエンリッチメントブロックを追加
  3. Python ImageLOCALに設定されていることを確認
  4. 以下のコードを入力。インストールした他のパッケージもあればそれぞれimport行を追加:
import pandas
import numpy
  1. エンリッチメントを計算。Pythonエラーなしで完了すれば成功です。

後からパッケージを追加する場合

追加するパッケージがある場合は、以下の手順を繰り返します。ただし新しいパッケージのみrequirements.txtに追加してください。

  1. インターネット接続パソコンでrequirements.txtにパッケージを追記し、ステップ4のコマンドを同じ--python-versionで再実行
  2. 更新したpackagesフォルダーとrequirements.txtをサーバーにコピー
  3. サーバーの管理者PowerShellでステップ8のコマンドを再実行

パッケージ追加後のサーバー再起動は不要です。

トラブルシューティング

「Python executable 'python' was not found」

症状: PythonエンリッチメントやPythonスクリプトアクションが失敗し、以下のメッセージが表示される:

Python executable 'python' was not found. Please ensure Python is installed and added to your system PATH environment variable.

対策:

  1. ステップ7を繰り返し、where.exe pythonC:\Program Files\Python313\python.exeを指していることを確認
  2. Pythonがユーザー専用にインストールされていたら、全ユーザー用に再インストール(ステップ6)
  3. サーバーを再起動(ステップ9)

「ModuleNotFoundError: No module named ...」

症状: PythonエンリッチメントやPythonスクリプトアクションがModuleNotFoundError: No module named 'openpyxl'(または他のパッケージ名)エラーを出す。

対策:

  1. 管理者PowerShellでpython -m pip show openpyxl(ステップ3で指定したパッケージ名に置き換え)を実行
  2. pipがPackage(s) not foundを報告した場合、パッケージはインストールされていません。ステップ4でダウンロードし、サーバーにコピーしてステップ8でインストールしてください
  3. LocationC:\Users\以下のフォルダーを指していたら、管理者権限なしでインストールされています。python -m pip uninstall openpyxlを実行し、管理者権限のPowerShellで再度ステップ8を実行してください

ダウンロード時の「No matching distribution found」

症状: ステップ4のコマンドでERROR: No matching distribution found forというエラーメッセージが出る。

対策:

  • 綴りを確認。インポート名ではなくパッケージ名を使用(ステップ3の表を参照)
  • バージョン番号を含めている場合、そのバージョンがあなたのPythonバージョンで利用できない可能性があります。バージョン番号を削除するか、新しいバージョンを選択
  • requirements.txtpip freezeから作成された場合、@ file:を含む行を削除してください。これらはローカルファイルからインストールされたもので、ダウンロードできません

サーバーでの「Could not find a version that satisfies the requirement」

症状: ステップ8のコマンド実行時にCould not find a version that satisfies the requirementというエラーメッセージが出る。

対策:

  • packagesフォルダーにそのパッケージが含まれていないか、異なるPythonバージョン用にダウンロードされている
  • サーバーのpython --versionとファイル名のcp部分を比較。Python 3.13ならファイル名にcp313が含まれていなければならない(py3-none-any.whlは任意のバージョンで使えます)
  • インターネット接続パソコンで--python-versionをサーバーに合わせて再度ダウンロードし、packagesフォルダーをサーバーに再コピーする

Python Imageで「Python not configured」が表示される

症状: Pythonエンリッチメント、Pythonスクリプトアクション、AI Case PredictionエンリッチメントのPython Image設定で「Python not configured」と表示される。

対策: Pythonインストール前に作成されたエンリッチメントやアクションはこの値を保持します。Python ImageLOCALに変更し、再計算してください。

関連ドキュメント