> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/docs/docs-ja/kontenaimjisukyan/local-image-scanning/jenkins-setup-for-local-image-scanning.md).

# ローカルイメージスキャン用のJenkins設定

Aikido Security Local Scanner は、Aikido Security のスキャンを環境内で実行できるようにするツールで、データが決してオンプレミスの外に出ないようにします。スキャンはローカルで実行され、その結果は Aikido Security プラットフォームにアップロードされます。この構成により、レジストリに送信される前に、自分のマシン上または CI/CD パイプライン内で、任意のイメージをローカルにスキャンできます。

## イメージのローカルスキャンの設定方法 <a href="#how-to-set-up-local-scanning-for-images" id="how-to-set-up-local-scanning-for-images"></a>

### 1. 認証トークンを取得する <a href="#id-1-get-your-authentication-token" id="id-1-get-your-authentication-token"></a>

1. へ移動してください [Local Scanner イメージ設定ページ](https://app.aikido.dev/settings/container-image-registry/add/localscan)
2. 認証トークンを生成してコピーします。このトークンは 1 回しか表示できないので注意してください。
3. このトークンを引数として追加します `--apikey` プロジェクトで Local Scanner を実行する際に。
4. このトークンを Jenkins に保存します。そのためには、Jenkins の設定で「Credentials」ページに移動してください。

![Jenkins のグローバル利用向けに新しいシークレットテキスト認証情報を追加するためのインターフェース。](/files/57bfdec4e36af69409675c984c6ceb50d7f4305d)

### 2. プロジェクトに Local Scanner を追加する <a href="#id-2-adding-the-local-scanner-to-your-project" id="id-2-adding-the-local-scanner-to-your-project"></a>

Aikido UI から local scanner のバイナリをダウンロードします。Jenkins では、ビルドノードに追加し、/usr/local/bin に配置して名前で実行できるようにします。バイナリが実行可能であることを確認してください（例： `chmod +x -R aikido-local-scanner`）。Docker がインストールされているランナーを使用している場合は、この手順を省略し、Local Scanner の Docker イメージを使ってスキャンを実行できます（下記参照）。

### 3. Local Scanner を実行する <a href="#id-3-running-the-local-scanner" id="id-3-running-the-local-scanner"></a>

これで、リポジトリでスキャナーを実行する準備は完了です。\
​\
Local scanner がデフォルトブランチでのみトリガーされるようにしてください。デフォルトでは、Aikido はリポジトリ内の 1 つのブランチ（通常は main または master ブランチ）について、依存関係とコードの問題をスキャンできます。そのため、Aikido プラットフォーム上でスキャン結果が混在しないよう、Local Scanner はそのブランチでのみ実行することを推奨します。git を使用している場合は、これを *ビルド対象のブランチ* セクションで指定できます。

![Jenkins を 'main' ブランチのみビルドするように設定する。](/files/ea945e1a3eeeb8d8e39298f9d61a5bc91d34263f)

次に、API キーをビルド環境に追加して、プロジェクトで使用できるようにします。

![ビルド環境で Aikido 用のシークレット API キーのバインディングを設定する。](/files/67ae2971d337ac797bf8e03fe7fdd66755853448)

以下の内容でプロジェクトに「シェルを実行」ステップを追加してください。イメージ名を使用することも、イメージの tar アーティファクトへのパスを使用することもできます。

```shellscript
aikido-local-scanner image-scan your-image --apikey $AIKIDO_API_KEY
```

あるいは、当社の Docker イメージを使用している場合は

```shellscript
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock aikidosecurity/local-scanner image-scan your-image --apikey $AIKIDO_API_KEY
```

レジストリにプッシュする前にリリースゲート付きスキャンを実行するには、次を追加できます。 `--fail-on critical` 上記のコマンドに追加します。重大度を、特定のゲート要件に合わせて調整してください。

### 4. スキャン結果を確認する <a href="#id-4-check-your-scanning-results" id="id-4-check-your-scanning-results"></a>

最初のスキャンが完了したら、Aikido Feed に移動して結果を確認できます。指定した名前のイメージが Aikido UI に作成され、スキャンのすべての結果が含まれます。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.aikido.dev/docs/docs-ja/kontenaimjisukyan/local-image-scanning/jenkins-setup-for-local-image-scanning.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
