Created
March 30, 2016 07:22
-
-
Save tmaslen/6db9ec4bed293de7aa032e70d277c020 to your computer and use it in GitHub Desktop.
This file contains 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
#!/bin/bash | |
VM=default | |
DOCKER_MACHINE=/usr/local/bin/docker-machine | |
VBOXMANAGE=/Applications/VirtualBox.app/Contents/MacOS/VBoxManage | |
BLUE='\033[0;34m' | |
GREEN='\033[0;32m' | |
NC='\033[0m' | |
unset DYLD_LIBRARY_PATH | |
unset LD_LIBRARY_PATH | |
clear | |
if [ ! -f $DOCKER_MACHINE ] || [ ! -f $VBOXMANAGE ]; then | |
echo "Either VirtualBox or Docker Machine are not installed. Please re-run the Toolbox Installer and try again." | |
exit 1 | |
fi | |
$VBOXMANAGE showvminfo $VM &> /dev/null | |
VM_EXISTS_CODE=$? | |
if [ $VM_EXISTS_CODE -eq 1 ]; then | |
echo "Creating Machine $VM..." | |
$DOCKER_MACHINE rm -f $VM &> /dev/null | |
rm -rf ~/.docker/machine/machines/$VM | |
$DOCKER_MACHINE create -d virtualbox --virtualbox-memory 2048 $VM | |
else | |
echo "Machine $VM already exists in VirtualBox." | |
fi | |
echo "Starting machine $VM..." | |
$DOCKER_MACHINE start $VM | |
echo "Setting environment variables for machine $VM..." | |
clear | |
cat << EOF | |
## . | |
## ## ## == | |
## ## ## ## ## === | |
/"""""""""""""""""\___/ === | |
~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ / ===- ~~~ | |
\______ o __/ | |
\ \ __/ | |
\____\_______/ | |
EOF | |
echo -e "${BLUE}docker${NC} is configured to use the ${GREEN}$VM${NC} machine with IP ${GREEN}$($DOCKER_MACHINE ip $VM)${NC}" | |
echo "For help getting started, check out the docs at https://docs.docker.com" | |
echo | |
eval $($DOCKER_MACHINE env $VM --shell=bash) | |
USER_SHELL=$(dscl /Search -read /Users/$USER UserShell | awk '{print $2}') | |
if [ "$USER_SHELL" = "/bin/bash" ] || [ "$USER_SHELL" = "/bin/zsh" ] || [ "$USER_SHELL" = "/bin/sh" ]; then | |
$USER_SHELL --login | |
else | |
$USER_SHELL | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment