Docker - Override or remove ENTRYPOINT from a base image
<p>I'm using Docker (version 1.12.2, build bb80604) to setup a simple image/container with Gatling (Load Testing tool) + NodeJS. So, I pulled <a href="https://hub.docker.com/r/denvazh/gatling/~/dockerfile/" rel="noreferrer">this Docker/Gatling base image</a> and created my own Dockerfile to install NodeJS on it.</p>

<p>However, the Docker/Gatling base image above has an ENTRYPOINT already defined to call Gatling straightaway and then automatically exits the container. It looks like this:</p>

<pre><code>ENTRYPOINT ["gatling.sh"]
</code></pre>

<p>What I'm trying to achieve is: I want to run a second command (my own NodeJS script to parse the test results), however I couldn't find a solution so far (I tried overriding the ENTRYPOINT, different combinations of ENTRYPOINT and CMD, but no success).</p>

<p>Here is how my current Dockerfile looks like:</p>

<pre><code>FROM denvazh/gatling:2.2.3

RUN apk update \
&amp;&amp; apk add -U bash \
&amp;&amp; apk add nodejs=6.7.0-r0

COPY simulations /opt/gatling/user-files/simulations
COPY trigger-test-and-parser.sh /opt/gatling/

RUN chmod +x /opt/gatling/trigger-test-and-parser.sh

ENTRYPOINT ["bash", "/opt/gatling/trigger-test-and-parser.sh"]
</code></pre>

<p>Here is the command I'm using to build my image based on my Dockerfile:</p>

<pre><code>docker build --no-cache -t gatling-nodejs:v8 .
</code></pre>

<p>And this is the command I'm using to run my container:</p>

<pre><code>docker run -i -v "$PWD/results":/opt/gatling/results -v "$PWD":/opt/gatling/git.campmon.com/rodrigot/platform-hps-perf-test gatling-nodejs:v8
</code></pre>

<p>And this is the shellscript (trigger-test-and-parser.sh) I'd like to execute once the container starts (it should trigger Gatling and then runs my NodeJS parser):</p>

<pre><code>gatling.sh -s MicroserviceHPSPubSubRatePerfTest.scala
node publish-rate-to-team-city.js
</code></pre>

<p>Any ideas or tweaks so I can run both commands once my container starts?</p>

<p>Thanks a lot!</p>