diff --git a/.dockerignore b/.dockerignore index a26029cc..a3766a7f 100644 --- a/.dockerignore +++ b/.dockerignore @@ -16,3 +16,4 @@ CREDITS data.zip DISCLAIMER.txt example.conf.json +bin/ diff --git a/Dockerfile b/Dockerfile index e97eec0e..430205b3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -10,14 +10,15 @@ RUN useradd -d /wpscan wpscan RUN echo "gem: --no-ri --no-rdoc" > /etc/gemrc RUN mkdir /wpscan -COPY . /wpscan - +COPY Gemfile /wpscan WORKDIR /wpscan +RUN bundle install --system --without test -RUN bundle install --without test +COPY . /wpscan RUN chown -R wpscan:wpscan /wpscan USER wpscan + RUN /wpscan/wpscan.rb --update --verbose --no-color ENTRYPOINT ["/wpscan/wpscan.rb"] diff --git a/bin/wpscan b/bin/wpscan new file mode 100755 index 00000000..f173e63e --- /dev/null +++ b/bin/wpscan @@ -0,0 +1,14 @@ +#!/bin/bash + +SOURCE="${BASH_SOURCE[0]}" +while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink + DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + SOURCE="$(readlink "$SOURCE")" + [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located +done +DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )" + +cd $DIR/../ +docker build -q -t wpscan:dev . +docker run --rm wpscan:dev "$@" +