Dockerfile リポジトリの CI 上で microscanner を実行しよう
はじめに
microscanner に関する記事を読んで、自分の Docker image リポジトリの CI に入れてみたので手順を紹介します。
導入時間は10分ほどになります。
作業手順
トークンの発行
まず始めに以下のコマンドを入力して、microscanner のトークンを発行します。
docker container run --rm -it aquasec/microscanner --register <your-email-address>
[Y/n] で Y を選択すると入力したメールアドレスにトークンが届きます。
TravisCI の設定
https://travis-ci.org/profile から特定のリポジトリのチェックを入れて、 Settings
をクリックします。
メールで取得したトークンを Environment Variables
に追加します。
画像のように入力し Add
をクリックして完了です。
ファイルの設置
次に、以下の microscanner.txt
, .travis.yml
をリポジトリ直下に配置します。
ADD https://get.aquasec.com/microscanner /
RUN chmod +x /microscanner
RUN /microscanner ${token}
RUN echo "No vulnerabilities!"
.travis.yml
は以下の設定にします。
sudo: required
services: docker
before_install: cat microscanner.txt >> Dockerfile
script: docker container build --build-arg=token=$TOKEN --no-cache .
microscanner.txt
は microscanner を動かすために必要なファイルになります。
.travis.yml
の before_install を見ていただくとわかるのですが、CI上でのみ Dockerfile
にスクリプトが追加されるようになります。
これらをリポジトリに push すると、CI 上で脆弱性チェックが行えるようになります。
失敗時の様子を試したい方は参照サイトでも紹介されている piesecurity/apache-struts2-cve-2017-5638 を使って試すとわかりやすいと思います。
以上、 microscanner を TravisCI 上で実行する方法でした。
参照サイト
Author And Source
この問題について(Dockerfile リポジトリの CI 上で microscanner を実行しよう), 我々は、より多くの情報をここで見つけました https://qiita.com/Asuforce/items/0cd2aee90a8eb8856dfe著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .