Docker cookbook

:: list images

sudo docker images

:: list the containers

sudo docker ps
sudo docker ps -a

:: start/stop a container

sudo docker start CONTAINER

:: inspect a container

sudo docker inspect CONTAINER

:: diff and log are two powerful commands to know what happenend ina running container

sudo docker diff CONTAINER
sudo docker log CONTAINER

:: remove a container

sudo docker rm CONTAINER

:: remove all stopped containers

sudo docker rm -v $(docker ps -aq -f status=exited)

:: delete an image

sudo docker rmi IMAGE

:: pull an image from the main repository

sudo docker pull IMAGE
sudo docker pull <registry>:<port>/IMAGE

:: push an image from the main repository

sudo docker push IMAGE
sudo docker push <registry>:<port>/IMAGE

:: run an image

sudo docker run -i -t IMAGE /bin/bash

:: commit a new container

sudo docker commit CONTAINER_HASH IMAGE_LABEL

:: export and save an image on tarball

sudo docker save mynewimage > /tmp/mynewimage.tar

:: import an image from a tarball

sudo docker load < /tmp/mynewimage.tar

:: deploy a registry server
https://docs.docker.com/registry/

docker run -d -p 5000:5000 --name registry registry:2

on hub0 we are running as:

sudo docker run -d -p 127.0.0.1:5000:5000 --restart=always  --name light-registry  registry:2

https://docs.docker.com/engine/reference/commandlinerence/commandline

:: IPTABLES

-A FORWARD -i docker0 -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o docker0 -j ACCEPT