国産脆弱性スキャナのvulsをdocker環境に入れてみます。
一時的に保存するディレクトリを作ります。
# mkdir /usr/local/src/vuls
# cd /usr/local/src/vuls
gitでソースをクローンします。
# git clone https://github.com/future-architect/vuls.git
# cd /usr/local/src/vuls/vuls/setup/docker
docker-composeでセットアップ
#docker-compose up -d
以上で完了です。
プロキシ環境の場合、
Creating network "docker_default" with the default driver
Building vuls
Step 1 : FROM buildpack-deps:jessie-scm
Trying to pull repository docker.io/library/buildpack-deps ...
Pulling repository docker.io/library/buildpack-deps
Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/buildpack-deps/images. You may want to check your internet connection or if you are behind a proxy.
ERROR: Service 'vuls' failed to build: Network timed out while trying to connect to https://index.docker.io/v1/repositories/library/buildpack-deps/images. You may want to check your internet connection or if you are behind a proxy.
というエラーでとまります。
Dockerにプロキシを設定する場合、まずは起動ファイルを探します。
# systemctl show docker|grep FragmentPath
起動ファイルに環境変数を追記します。
(おすすめではないらしい)
# vi /usr/lib/systemd/system/docker.service
Environment="HTTP_PROXY=http://proxy.TTT.com:8080" "HTTPS_PROXY=proxy.TTT.com:8080"
# systemctl daemon reload
# systemctl restart docker
以上でdockerでproxy経由でのpullができるようになりました。
さらに、vulsの構築時にapt-getを使います。
そいつのProxy設定も入れてやらないとエラーになります。
# vi /usr/local/src/vuls/vuls/setup/docker/dockerfile/Dockerfile
FROM buildpack-deps:jessie-scm
ENV http_proxy http://proxy.TTT.com:8080
ENV https_proxy http://proxy.TTT.com:8080
# golang Install
RUN apt-get update && apt-get install -y --no-install-recommends \
ファイルの頭の方にプロキシ設定を追記。
あとは、再度
# docker-compose up -d
で動きます。
ただし、標準で80番ポートをListenします。
ネットワークの設定によっては、httpdをすでに動かしていると、エラーになるのでポート番号かえるなど対策してください。