0%

Docker Notes

Docker is really HOT.

Windows joined already, we can now run windows containers as well. However we will not discuss it in this post.
And Docker-toolbox had changed its name to Docker-desktop and has its pay plan. It is no long FREE for use in COMPANY.

Docker with Windows

Installation

~Generally speaking there is no Windows version of Docker Server available.~
What we install through Docker-toolbox is the Docker client. The Server is actually started by boot2docker on virtualbox.

Only docker client with its SHELL are running on Windows platform. Everything else including image and container are all in the virtual machine. Be clear with this can help with your backup procedure with toolbox upgrade.

The installation package can be got from docker-toolbox official site.

Private registry

With the first start, toolbox will create a virtual machine named as default. If you want to add private registry support, add the following configuration in the startup script on the top to specify your private registry. If you have multiple registries, repeat the line with different destination. Usually the script is C:\Docker\start.sh

1
ENGINE_OPT="--engine-insecure-registry docker-repo01.pl-lab.lucent.com:6000 "$ENGINE_OPT

We need to add the parameters when creating virtual machine default. Find the section in above C:\Docker\start.sh

1
2
3
4
5
if [ $VM_EXISTS_CODE -eq 1 ]; then
"${DOCKER_MACHINE}" rm -f "${VM}" &> /dev/null || :
rm -rf ~/.docker/machine/machines/"${VM}"
"${DOCKER_MACHINE}" create -d virtualbox "${VM}"
fi

And replace the line doing create

1
"${DOCKER_MACHINE}" create -d virtualbox $ENGINE_OPT "${VM}"

Behind Proxy

Like private registry, docker-machine support to add proxy configurations. Add the following on top of startup script C:\Docker\start.sh

1
2
3
ENGINE_OPT="--engine-env http_proxy=192.168.56.1:3939 "$ENGINE_OPT
ENGINE_OPT="--engine-env https_proxy=192.168.56.1:3939 "$ENGINE_OPT
ENGINE_OPT="--engine-env no_proxy=.alcatel-sbell.com.cn,.lucent.com "$ENGINE_OPT

If you does not do above step for private registry, find the line and replace with

1
"${DOCKER_MACHINE}" create -d virtualbox $ENGINE_OPT "${VM}"

Change Terminal

By default, the terminal is Windows Command shell. We can change it to use mintty which support Copy on Select with Mouse

Still in startup script C:\Docker\start.sh

Replace the line

1
exec "${BASH}" --login -i

With our mintty which installed from GIT in tool-box package

1
exec mintty -i /c/docker/docker-quickstart-terminal.ico -w max - &