Having worked with multiple Virtualization platforms, I recently got an interesting opportunity to work with its younger sibling containerization . The platform of choice was obviously Docker. Getting Docker up and run in an OS of your preference is a simple task, you can straightaway get it done using the instructions here . Interesting part is getting to play around with it
Getting it up and running:
Docker can be started as a services or at a tcp port. Starting as a service is pretty straight forward
#service docker start
However, the interesting bit is when you want to run it as a deamon listening to a specific port. This is useful in scenarios when you want to manage the docker engine remotely, say using a windows docker client or using one of the open source GUIs available for docker like Shipyard and Mist.io
The command to run docker as a deamon listening to a port is
# /usr/bin/docker -d -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock &
Here docker will listen at all IPs of the machine at port 4243. If you want to connect to this docker engine from a remote docker client, the following command can be used
#docker -H tcp://<docker engine host>:4243 <commands>
For eg: #docker -H tcp://<docker engine host>:4243 ps
One downside of this method is that there is no inherent authentication mechanisms for remote access
Spin up your containers:
Lets start with pulling an image from the Docker hub, which is a public repository of Docker images
Getting it up and running:
Docker can be started as a services or at a tcp port. Starting as a service is pretty straight forward
#service docker start
However, the interesting bit is when you want to run it as a deamon listening to a specific port. This is useful in scenarios when you want to manage the docker engine remotely, say using a windows docker client or using one of the open source GUIs available for docker like Shipyard and Mist.io
The command to run docker as a deamon listening to a port is
# /usr/bin/docker -d -H tcp://0.0.0.0:4243 -H unix:///var/run/docker.sock &
Here docker will listen at all IPs of the machine at port 4243. If you want to connect to this docker engine from a remote docker client, the following command can be used
#docker -H tcp://<docker engine host>:4243 <commands>
For eg: #docker -H tcp://<docker engine host>:4243 ps
One downside of this method is that there is no inherent authentication mechanisms for remote access
Spin up your containers:
Lets start with pulling an image from the Docker hub, which is a public repository of Docker images