メインコンテンツへ移動

コードブロックの実行環境を拡張する方法

HAPでは、デフォルトでコードブロックの実行環境としてNode.js(10.18)およびPython(3.6)を利用しています。v5.1以降では、さらに多くの実行環境を拡張できるようになります。

現在、デフォルトイメージ nocoly/command:node1018-python36 に加え、 比較的新しいイメージ nocoly/command:node2011-python312 も利用可能です。

互換性の観点から、複数バージョン間での切り替えや新バージョンへの完全な移行がサポートされています。

コードブロックの依存関係拡張については、コードブロックの依存関係を拡張する方法 を参照してください。パスの対応箇所を調整するだけで利用できます。 例えば、python3.6 を python3.12 に、node-10.18.0 を node-20.11 に変更してください。

  1. イメージをダウンロードします(オフラインパッケージ)。
docker pull nocoly/command:node2011-python312
  1. 設定ファイルに下記の内容を追加します。
commandv2:
image: nocoly/command:node2011-python312
  1. コードブロックサービス拡張用の設定ファイルを作成します。例:/data/hap/script/volume/workflow/application-www-ext.properties 内容は以下の通りです。
md.grpc.client.MDCommandService[0].address=static://commandv2:9098
md.grpc.client.MDCommandService[0].nodeVersion=20.11
md.grpc.client.MDCommandService[0].pythonVersion=3.12
  1. アプリケーションサービスのvolumesに、下記設定を追加して設定ファイルをマウントします。
volumes:

- ./volume/workflow/application-www-ext.properties:/usr/local/MDPrivateDeployment/workflow/application-www-ext.properties
- ./volume/workflow/application-www-ext.properties:/usr/local/MDPrivateDeployment/workflowconsumer/application-www-ext.properties
- ./volume/workflow/application-www-ext.properties:/usr/local/MDPrivateDeployment/workflowintegration/application-www-ext.properties
- ./volume/workflow/application-www-ext.properties:/usr/local/MDPrivateDeployment/workflowplugin/application-www-ext.properties
  1. サービスを再起動します。