I'm spending a lot of time learning new and exciting development technologies at my new job. Spending time in open source development has given me a chance to really understand and experiment with technology that I did not have time to previously.

This past week I spent some time learning docker and containers in general. I had ample experience configuring and using virtual machines previously. Containers were something new and foreign.

I started with some general reading on the docker.com website. I then used the free lynda.com account that my employer provides to dig into some docker 101 courses:


The notes I took from this course are below. I hope to continue to update them as my experience in docker increases.

docker ps - show running images

docker run -ti ubuntu:latest bash - run container with terminal interface enabled

docker ps -a show ALL containers

docker ps -l - show last container that was run

docker commit IMAGE_NAME CONTAINER_NAME - save changes made to the container and image

i.e. docker commit saucy_nancy my-image-2

docker -rm CONTAINER_NAME - remove a container

Docker network create NETWORK_NAME - creates a new network for docker containers

docker run -rm -ti --net=NETWORK_NAME --name=server ubuntu:14.04 bash

docker rmi IMAGE_NAME - removes a docker image