86aea653c8
Since [1] some timings seem to have changed. This caused the unit tests
to fail intermittently, from my testings especially on Ubuntu systems
(much less often on e.g. Arch).
This commit adds the `dockergen_wait_for_event` helper-function to try
and wait for the configuration to be generated by docker-gen before
continuing on with the actual tests themselves.
Additionally, at the end of every test file, all containers spun up by
the bats-tests will be stopped. This required adding the `bats-type`
label to every container started during the bats-tests.
The stopping of the containers reduces the amount of events docker-gen
has to process, thus resulting in lower wait times for the generation to
happen.
[1]: 50435652b1
34 lines
1.1 KiB
Docker
34 lines
1.1 KiB
Docker
FROM nginx:1.9.12
|
|
MAINTAINER Jason Wilder mail@jasonwilder.com
|
|
|
|
# Install wget and install/updates certificates
|
|
RUN apt-get update \
|
|
&& apt-get install -y -q --no-install-recommends \
|
|
ca-certificates \
|
|
wget \
|
|
&& apt-get clean \
|
|
&& rm -r /var/lib/apt/lists/*
|
|
|
|
# Configure Nginx and apply fix for very long server names
|
|
RUN echo "daemon off;" >> /etc/nginx/nginx.conf \
|
|
&& sed -i 's/^http {/&\n server_names_hash_bucket_size 128;/g' /etc/nginx/nginx.conf
|
|
|
|
# Install Forego
|
|
RUN wget -P /usr/local/bin https://godist.herokuapp.com/projects/ddollar/forego/releases/current/linux-amd64/forego \
|
|
&& chmod u+x /usr/local/bin/forego
|
|
|
|
ENV DOCKER_GEN_VERSION 0.7.0
|
|
|
|
RUN wget https://github.com/jwilder/docker-gen/releases/download/$DOCKER_GEN_VERSION/docker-gen-linux-amd64-$DOCKER_GEN_VERSION.tar.gz \
|
|
&& tar -C /usr/local/bin -xvzf docker-gen-linux-amd64-$DOCKER_GEN_VERSION.tar.gz \
|
|
&& rm /docker-gen-linux-amd64-$DOCKER_GEN_VERSION.tar.gz
|
|
|
|
COPY . /app/
|
|
WORKDIR /app/
|
|
|
|
ENV DOCKER_HOST unix:///tmp/docker.sock
|
|
|
|
VOLUME ["/etc/nginx/certs"]
|
|
|
|
ENTRYPOINT ["/app/docker-entrypoint.sh"]
|
|
CMD ["forego", "start", "-r"]
|