In this part we will go through some simple usage of docker command.
Use -D with docker for debug mode.
Docker images are Immutable and Containers are Ephemeral.
How to get help ??
docker help
docker <command> help
1. Check images:
docker images
2. Run an application in the container:
( We have already downloaded oraclelinux:6.6 image from dockerhub)
-i flag starts an interactive container.
-t flag creates a pseudo-TTY that attaches stdin and stdout
docker run -i -t –name guest companylinux:6.6 /bin/bash
–name -> create an container instance with the name using the image companylinux6.6
execute /bin/bash isinde the container guest
NOTE : Here if image doesnt exist locally it will try to pull it from docker hub
3. Create an image and remove the container once logged out
docker run -i -t –rm companylinux:6.6 /bin/bash
4. Show all info about running processes in docker
docker ps
docker ps -a
5. Show info of processes running inside a container(here guest)
docker top guest
6. Run additional processes inside (guest here)
docker exec -it guest <command>
7. Create a container with a name that can be started in later time
docker create -it –name guest1 companylinux:7 /bin/bash
8. Start a container instance and Attach current shell to a docker container instance guest1
docker start -ai <container name> OR docker start -ai <container id>
9. stop instance and exit from the container
docker stop <containerid>
10. remove a container instance
docker rm guest1
11. Show all logs currently happening inside
docker logs -f guest
-f > updates the output in realtime
12. Get full information about a container in json format with inspect
docker inspect –format ='{{ .State.running}}’ guest1
13. Relaunch a container:
Look at the docker ps -all output and note down the CONTAINER_ID. If want to relaunch with interactive mode use -i option else just start.
docker start -i cfb007d616b9
OR
docker start cfb007d616b9
14. start/attach to a running Container
docker start <ID of comtainer>
15. Change the behaviour of the containers when exits from the container instance (add the option with run command )
–restart=always
Docker always attempts to restart the container when the container exits.
–restart=no
Docker does not attempt to restart the container when the container exits. This is the default policy.
–restart=on-failure[:max-retry]
Docker attempts to restarts the container if the container returns a non-zero exit code. You can optionally specify the maximum number of times that Docker will try to restart the container.
–rm (use this with run command, so that once you exit from the instance, it will get removed)
16. Local repo creation:(Use registry with tag 2, base host port 5000 mapped to registry container instance port 5000, names with localregistry)
docker run -d -p 5000:5000 –restart=always –name localregistry registry:2
17. Add images to local repository:(pull from docker hub OR create local image, tag it ,push it into local repo, pull it to from localrepo to create instance)
docker pull companylinux:6.6
docker tag companylinux:6.6 localhost:5000/oel6u6
docker push localhost:5000/oel6u6
docker pull localhost:5000/oel6u6
18. Stop and remove any instance
docker stop <container id> OR docker stop <instance-name>
docker rm <container id> OR docker rm <instance-name>
19. Remove image from repository(use -f for force remove)
docker rmi <imageid> OR docker rmi <imagereponame>
docker rmi -f <imageid> OR docker rmi -f <imagereponame>
20. Remove dead process entry from (docker ps -all) where any instance is in stopped state
docker rm $(docker ps -a -q)