From 7b46b1b9704430bf9762fd3f8fdcf7f1164d3ece Mon Sep 17 00:00:00 2001 From: Bryan Moyles Date: Fri, 1 Dec 2017 16:03:48 -0500 Subject: [PATCH 1/3] Add docker-entrypoint.sh to abstract around metadatad binary. --- pkg/docker/Dockerfile-xenial | 7 +++++-- pkg/docker/docker-entrypoint.sh | 9 +++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100755 pkg/docker/docker-entrypoint.sh diff --git a/pkg/docker/Dockerfile-xenial b/pkg/docker/Dockerfile-xenial index b58b1fc1..5689b057 100644 --- a/pkg/docker/Dockerfile-xenial +++ b/pkg/docker/Dockerfile-xenial @@ -1,6 +1,8 @@ # To use directly, run: docker build --build-arg package=.xenial.deb -t -f Dockerfile-xenial FROM ubuntu:xenial +EXPOSE 8000 + ARG version=0.0.19-1 ARG package=https://storage.googleapis.com/stackdriver-container-alpha/deb/xenial/stackdriver-metadata_${version}.xenial.deb ADD ${package} /stackdriver-metadata.deb @@ -10,6 +12,7 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* \ && rm -rf /stackdriver-metadata.deb -CMD /opt/stackdriver/metadata/sbin/metadatad +COPY docker-entrypoint.sh /docker-entrypoint.sh -EXPOSE 8000 +ENTRYPOINT ["/docker-entrypoint.sh"] +CMD ["/opt/stackdriver/metadata/sbin/metadatad"] \ No newline at end of file diff --git a/pkg/docker/docker-entrypoint.sh b/pkg/docker/docker-entrypoint.sh new file mode 100755 index 00000000..7807098b --- /dev/null +++ b/pkg/docker/docker-entrypoint.sh @@ -0,0 +1,9 @@ +#!/bin/sh +set -e + +# first arg is a flag. +if [ "${1:0:1}" = '-' ]; then + set -- /opt/stackdriver/metadata/sbin/metadatad "$@" +fi + +exec "$@" \ No newline at end of file From 1b1c8925372c17214d90b7907166a1ec5068cde5 Mon Sep 17 00:00:00 2001 From: Bryan Moyles Date: Tue, 22 May 2018 15:00:02 -0400 Subject: [PATCH 2/3] Use entrypoint.sh instead of docker-entrypoint.sh --- pkg/docker/Dockerfile-xenial | 7 +++---- pkg/docker/docker-entrypoint.sh | 9 --------- pkg/docker/entrypoint.sh | 20 ++++++++++++++++++++ 3 files changed, 23 insertions(+), 13 deletions(-) delete mode 100755 pkg/docker/docker-entrypoint.sh create mode 100755 pkg/docker/entrypoint.sh diff --git a/pkg/docker/Dockerfile-xenial b/pkg/docker/Dockerfile-xenial index 5689b057..ffce7250 100644 --- a/pkg/docker/Dockerfile-xenial +++ b/pkg/docker/Dockerfile-xenial @@ -11,8 +11,7 @@ RUN apt-get update \ && apt-get install -f -y \ && rm -rf /var/lib/apt/lists/* \ && rm -rf /stackdriver-metadata.deb +ADD entrypoint.sh /entrypoint.sh -COPY docker-entrypoint.sh /docker-entrypoint.sh - -ENTRYPOINT ["/docker-entrypoint.sh"] -CMD ["/opt/stackdriver/metadata/sbin/metadatad"] \ No newline at end of file +ENTRYPOINT ["/entrypoint.sh"] +CMD ["/opt/stackdriver/metadata/sbin/metadatad"] diff --git a/pkg/docker/docker-entrypoint.sh b/pkg/docker/docker-entrypoint.sh deleted file mode 100755 index 7807098b..00000000 --- a/pkg/docker/docker-entrypoint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -set -e - -# first arg is a flag. -if [ "${1:0:1}" = '-' ]; then - set -- /opt/stackdriver/metadata/sbin/metadatad "$@" -fi - -exec "$@" \ No newline at end of file diff --git a/pkg/docker/entrypoint.sh b/pkg/docker/entrypoint.sh new file mode 100755 index 00000000..4821b182 --- /dev/null +++ b/pkg/docker/entrypoint.sh @@ -0,0 +1,20 @@ +#!/bin/sh +set -e + +# This docker image supports sending either a flag or a command as the docker +# command. When a flag is sent, it will be passed on to the metadata agent +# process. Anything else will be interpreted as the command to be run. +# +# Passing a flag. +# $ docker run -it {image:tag} -v +# +# Passing a command. +# $ docker run -it {image:tag} /bin/bash +# +# Default behavior uses CMD defined in Dockerfile. +# $ docker run -it {image:tag} +if [ "${1:0:1}" = '-' ]; then + set -- /opt/stackdriver/metadata/sbin/metadatad "$@" +fi + +exec "$@" \ No newline at end of file From 4ef39ad4e1b9e82637dc74ed4972978c03b1af64 Mon Sep 17 00:00:00 2001 From: Bryan Moyles Date: Tue, 22 May 2018 16:06:56 -0400 Subject: [PATCH 3/3] Address feedback. --- pkg/docker/Dockerfile-xenial | 2 +- pkg/docker/entrypoint.sh | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/docker/Dockerfile-xenial b/pkg/docker/Dockerfile-xenial index ffce7250..7a439ce4 100644 --- a/pkg/docker/Dockerfile-xenial +++ b/pkg/docker/Dockerfile-xenial @@ -11,7 +11,7 @@ RUN apt-get update \ && apt-get install -f -y \ && rm -rf /var/lib/apt/lists/* \ && rm -rf /stackdriver-metadata.deb -ADD entrypoint.sh /entrypoint.sh +COPY entrypoint.sh /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] CMD ["/opt/stackdriver/metadata/sbin/metadatad"] diff --git a/pkg/docker/entrypoint.sh b/pkg/docker/entrypoint.sh index 4821b182..843a57f7 100755 --- a/pkg/docker/entrypoint.sh +++ b/pkg/docker/entrypoint.sh @@ -13,8 +13,9 @@ set -e # # Default behavior uses CMD defined in Dockerfile. # $ docker run -it {image:tag} + if [ "${1:0:1}" = '-' ]; then set -- /opt/stackdriver/metadata/sbin/metadatad "$@" fi -exec "$@" \ No newline at end of file +exec "$@"