From 24a2de59dcfd16c1c03b68857b0053ebcf2be8f1 Mon Sep 17 00:00:00 2001 From: Lusheng Ji Date: Wed, 5 Apr 2017 22:58:20 -0400 Subject: fixing curl hang in some deployments Change-Id: Icd39bd289c8d4dccd440e725636c90b86ebe5e59 Signed-off-by: Lusheng Ji (cherry picked from commit 64239f17aed46571ce4eec7c5fba709fa04818bb) --- deploy.sh | 29 ++++++++++++++++++----------- docker_files/Dockerfile-local | 22 ++++++++++++++++++++++ docker_files/__docker-compose.yml | 4 +++- 3 files changed, 43 insertions(+), 12 deletions(-) create mode 100644 docker_files/Dockerfile-local diff --git a/deploy.sh b/deploy.sh index 8a6edba..b1f9ebd 100755 --- a/deploy.sh +++ b/deploy.sh @@ -3,28 +3,35 @@ set -e # do not change this, it is already matched with the git repo file structure -DOCKER_FILE_DIR="./docker_files" +DOCKER_FILE_DIR='./docker_files' + +KAFKA_VERSION='0.8.1.1' +SCALA_VERSION='2.9.2' +wget -q "http://www.namesdir.com/mirrors/apache/kafka/${KAFKA_VERSION}/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz" \ + -O "./docker_files/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz" # commands to run docker and docker-compose -DOCKER_COMPOSE_EXE="/opt/docker/docker-compose" -DOCKER_EXE="docker" +DOCKER_COMPOSE_EXE='/opt/docker/docker-compose' +cd "${DOCKER_FILE_DIR}" -cd ${DOCKER_FILE_DIR} +while ! ifconfig |grep "docker0" > /dev/null; + do sleep 1 + echo 'waiting for docker operational' +done echo "prep any files with local configurations" -if ls __* 1> /dev/null 2>&1; then - IP_DOCKER0=`ifconfig docker0 |grep "inet addr" | cut -d: -f2 |cut -d" " -f1` - TEMPLATES=`ls -1 __*` +if ls __* 1> /dev/null 2>&1; then + IP_DOCKER0=$(ifconfig docker0 |grep "inet addr" | cut -d: -f2 |cut -d" " -f1) + TEMPLATES=$(ls -1 __*) for TEMPLATE in $TEMPLATES - do + do FILENAME=${TEMPLATE//_} - if [ ! -z ${IP_DOCKER0} ]; then - sed -e "s/{{ ip.docker0 }}/${IP_DOCKER0}/" $TEMPLATE > $FILENAME + if [ ! -z "${IP_DOCKER0}" ]; then + sed -e "s/{{ ip.docker0 }}/${IP_DOCKER0}/" "$TEMPLATE" > "$FILENAME" fi done fi echo "starting docker operations" -#${DOCKER_EXE} login --username=${DOCKER_REGISTRY_USERNAME} --password=${DOCKER_REGISTRY_PASSWORD} ${DOCKER_REGISTRY} ${DOCKER_COMPOSE_EXE} up -d diff --git a/docker_files/Dockerfile-local b/docker_files/Dockerfile-local new file mode 100644 index 0000000..4909af3 --- /dev/null +++ b/docker_files/Dockerfile-local @@ -0,0 +1,22 @@ +FROM anapsix/alpine-java + +MAINTAINER Wurstmeister + +RUN apk add --update tar wget curl docker coreutils + +ENV KAFKA_VERSION="0.8.1.1" SCALA_VERSION="2.9.2" +COPY kafka_2.9.2-0.8.1.1.tgz /tmp/kafka_2.9.2-0.8.1.1.tgz +RUN tar xfz /tmp/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz -C /opt + +VOLUME ["/kafka"] + +ENV KAFKA_HOME /opt/kafka_2.9.2-0.8.1.1 +ADD start-kafka.sh /usr/bin/start-kafka.sh +ADD broker-list.sh /usr/bin/broker-list.sh +ADD create-topics.sh /usr/bin/create-topics.sh +# The scripts need to have executable permission +RUN chmod a+x /usr/bin/start-kafka.sh && \ + chmod a+x /usr/bin/broker-list.sh && \ + chmod a+x /usr/bin/create-topics.sh +# Use "exec" form so that it runs as PID 1 (useful for graceful shutdown) +CMD ["start-kafka.sh"] diff --git a/docker_files/__docker-compose.yml b/docker_files/__docker-compose.yml index b59d395..da83c74 100644 --- a/docker_files/__docker-compose.yml +++ b/docker_files/__docker-compose.yml @@ -13,7 +13,9 @@ services: max-file: "5" kafka: - build: . + build: + context: . + dockerfile: Dockerfile-local ports: - "9092:9092" environment: -- cgit 1.2.3-korg