Last active
August 29, 2015 14:17
-
-
Save jmervine/6713d10ab05fecd6e1aa 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
############################################################# | |
# Function -- Boot2Docker | |
############################################################# | |
if test "$(which boot2docker 2> /dev/null)"; then | |
function docker_shellinit { | |
local _shellinit="$(boot2docker shellinit)" | |
eval "$(echo ${_shellinit})" | |
echo "${_shellinit}" > ~/.boot2dockerrc | |
} | |
function docker_reup { | |
echo "+ running vpn fix" | |
docker_down | |
echo "+ resetting vbox route" | |
local _iface="$(VBoxManage showvminfo boot2docker-vm --machinereadable | grep hostonlyadapter | cut -d '"' -f 2)" | |
echo "++ sudo route -n add -net 192.168.59.0/24 -interface ${_iface}" | |
sudo route -n add -net 192.168.59.0/24 -interface ${_iface} && \ | |
docker_up | |
} | |
function docker_reset { | |
echo "+ clearing docker variables" | |
unset DOCKER_HOST | |
unset DOCKER_CERT_PATH | |
unset DOCKER_TLS_VERIFY | |
docker_shellinit | |
} | |
function docker_up { | |
echo "+ starting boot2docker" | |
boot2docker up | |
b2dSTATUS=$? | |
docker_reset | |
return $b2dSTATUS | |
} | |
function docker_down { | |
echo "+ stopping boot2docker" | |
boot2docker down | |
return 0 | |
} | |
function docker_clean { | |
echo "+ clean containers" | |
docker ps -a | grep 'Exited ' | awk '{ print $NF }' | xargs docker rm | |
docker ps -a | grep -v 'Up ' | awk '{ print $NF }' | xargs docker rm | |
echo "+ clean images" | |
docker images | grep '^<none>' | awk '{ print $3 }' | xargs docker rmi | |
} | |
function b2d { | |
case "$@" in | |
reload) | |
docker_reset | |
return 0;; | |
reset|fix|reup|fuck) | |
docker_reup | |
return $?;; | |
up) | |
docker_up | |
return $?;; | |
down) | |
docker_down | |
return $?;; | |
clean) | |
docker_clean | |
return $?;; | |
esac | |
boot2docker $@ | |
} | |
docker_exec="$(which docker)" | |
function docker { | |
case "$@" in | |
reload) | |
docker_reset | |
return 0;; | |
reset|fix|reup|fuck) | |
docker_reup | |
return $?;; | |
up) | |
docker_up | |
return $?;; | |
down) | |
docker_down | |
return $?;; | |
clean) | |
docker_clean | |
return $?;; | |
esac | |
$docker_exec $@ | |
} | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment