From 08c9b5f9bce41144ae775391f38fcf2c47066695 Mon Sep 17 00:00:00 2001 From: Nicolas Boisselier Date: Wed, 16 Nov 2016 21:43:55 +0000 Subject: [PATCH] docker --- etc/profile.d/docker.sh | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/etc/profile.d/docker.sh b/etc/profile.d/docker.sh index cf449cc0..648ef7d4 100644 --- a/etc/profile.d/docker.sh +++ b/etc/profile.d/docker.sh @@ -1,4 +1,5 @@ which docker > /dev/null || return 0 +[ -z "$DOCKER_DIR" -a -d "~nico/owncloud/Docker" ] && DOCKER_DIR="~nico/owncloud/Docker" if [ -z "$MYVIMRC" ]; then [ -z "$DOCKER_CERT_PATH" -o ! -e "$DOCKER_CERT_PATH" ] && which docker-machine>/dev/null && docker-machine ls -q 2>/dev/null |grep -qFm1 docker && eval "$(docker-machine env docker)" 2>/dev/null @@ -10,21 +11,29 @@ docker_build() { local docker_name=$(basename "$(pwd)") local pwd="" - if [ -n "$1" -a -d "$1" ]; then - pwd=$(pwd) - cd "$1" || return - docker_name=$(basename "$(pwd)") + if [ -n "$1" ]; then + + if [ -d "$1" ]; then + pwd=$(pwd) + cd "$1" || return + docker_name=$(basename "$(pwd)") + fi + shift fi - [ ! -e Dockerfile ] && echo "$FUNCNAME: Dockerfile missing in $(pwd)" 1>&2 && return local ex=0 if [ -n "$(docker images -q $docker_name 2>/dev/null)" ]; then echo "$FUNCNAME: $docker_name already build." + ex=2 + + elif [ ! -e Dockerfile ]; then + echo "$FUNCNAME: Dockerfile missing in $(pwd)" 1>&2 ex=1 else perl -ne '/^\s*\#\s*DOCKER_BUILD\s*(.*?)$/ and system "$1"' Dockerfile + echo $FUNCNAME: docker build --rm --force-rm=true --tags $docker_name $@ $docker_name . docker build --rm --force-rm=true -t $@ $docker_name . @@ -32,9 +41,12 @@ docker_build() { docker rmi -f $(docker images -qf "dangling=true") echo "$FUNCNAME: Review your Docker file" ex=1 + + else + perl -ne '/^\s*\#\s*DOCKER_BUILD_POST\s*(.*?)$/ and system "$1"' Dockerfile + ex=${?:-0} fi - perl -ne '/^\s*\#\s*DOCKER_BUILD_POST\s*(.*?)$/ and system "$1"' Dockerfile fi [ -n "$pwd" ] && cd "$pwd" -- 2.47.3