Created
September 13, 2019 16:31
-
-
Save bneutra/43284959b885c0b6ad6ddaeeffffb893 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# ruby-jmeter image to run | |
FROM alpine:3.9 | |
ARG JMETER_VERSION="5.1" | |
ENV JMETER_HOME /opt/apache-jmeter-${JMETER_VERSION} | |
ENV JMETER_BIN ${JMETER_HOME}/bin | |
ENV JMETER_DOWNLOAD_URL https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-${JMETER_VERSION}.tgz | |
# Install extra packages | |
# See https://github.com/gliderlabs/docker-alpine/issues/136#issuecomment-272703023 | |
# Change TimeZone TODO: TZ still is not set! | |
ARG TZ="America/New_York" | |
RUN apk update | |
RUN apk upgrade | |
RUN apk add ca-certificates | |
RUN update-ca-certificates | |
RUN apk add --update openjdk8-jre nss tzdata curl unzip bash \ | |
&& mkdir -p /tmp/dependencies \ | |
&& curl -L --silent ${JMETER_DOWNLOAD_URL} > /tmp/dependencies/apache-jmeter-${JMETER_VERSION}.tgz \ | |
&& mkdir -p /opt \ | |
&& tar -xzf /tmp/dependencies/apache-jmeter-${JMETER_VERSION}.tgz -C /opt \ | |
&& rm -rf /tmp/dependencies | |
RUN apk add build-base ruby-dev ruby ruby-bundler ruby-io-console libffi-dev zlib-dev ruby-json | |
RUN rm -rf /var/cache/apk/* | |
RUN gem install rdoc --no-document && gem install ruby-jmeter && gem install json | |
RUN ln -s $JMETER_HOME /opt/jmeter | |
RUN mkdir /app | |
COPY irfload.rb /app/ # ruby-jmeter script | |
COPY claim.json /app/ # sample post request | |
COPY entrypoint.sh /app/ # wrapper script | |
WORKDIR /mnt | |
# e.g. args: endpoint_url, rpm, duration_secs, rampup_secs | |
# docker run -v `pwd`:/mnt [IMAGE] https://your/api 300 120 20 | |
ENTRYPOINT ["/app/entrypoint.sh"] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment