PreEmptive では、弊社の製品用に事前に作成された Docker コンテナを提供していませんが、弊社の提供するディストリビューションを使用すれば、独自のコンテナを作成するのは簡単な作業です。これらのコンテナを利用するには、フローティング ライセンスが必要であることに留意してください。
以下は、コンテナを構築するための出発点となる、JSDefender 用の Dockerfile のサンプルです。{x.y[.z]} は適切なメジャー.マイナー[.パッチ] バージョンに置き換えてください。
Dockerfile:
FROM node:12.16.1
# JSDefender をコピーしてインストールする
COPY preemptive-jsdefender-*-{x.y.z}.tgz ./
RUN npm install -g preemptive-jsdefender-*-{x.y.z}.tgz --save-dev
# コマンド ライン インターフェイスを実行するように設定する
ENTRYPOINT ["jsdefender"]このイメージをビルドするには、次のようにします。
-
Dockerfileを任意の場所に保存し、その場所を覚えておいてください。 -
PreEmptive から JSDefender パッケージ(
preemptive-jsdefender-core-{x.y.z}.tgz、preemptive-jsdefender-cli-{x.y.z}.tgzなど)をダウンロードします。 - パッケージを上記の
Dockerfileと同じディレクトリに配置します。 -
docker build -t preemptive/jsdefender:{x.y.z} {'Dockerfile' を含むディレクトリへのパス}を実行します。
JSDefender コンテナの実行は簡単で、ライセンス情報を渡す必要があります。これは、現在の環境からミラーリングすることもできます。
docker run --rm -e JSDEFENDER_LICENSE -v {projectPath}:/code preemptive/jsdefender:{x.y.z} /code/jsdefender.config.jsonコンテナの環境で次のように設定します。
docker run --rm -e JSDEFENDER_LICENSE={LicenseString} -v {projectPath}:/code preemptive/jsdefender:{x.y.z} /code/jsdefender.config.jsonまたは、コマンド ラインを使用して次のように渡します。
docker run --rm -v {projectPath}:/code preemptive/jsdefender:{x.y.z} -license:<license-string> /code/jsdefender.config.json追加の引数についてはこちらを参照してください。