I have been using Docker and Kubernetes for several years now but never really took any time to really read about it. There were a lot of gaps in my understanding of how Docker works and what really is possible with it. Just recently my employer started to offer Udemy’s subscription, so I took Hands on Docker course. Here are some of the important things I learned in this course.
Where do you run Docker containers
You run these in Windows or MacOS but most likely you will use Linux in production. And unlike Windows and MacOS, you can run Docker on Linux VPS.
Important Docker commands
# get running docker containers docker ps # get all docker containers including those that have exited docker ps -a # stop container by its id or name docker stop first_few_chars_of_id # list docker images stored on the host docker images # remove image docker rmi image_name # download a new image docker pull image_name docker pul image_name:specific_tag # append a command docker run image_name command to run with parameters docker run ubuntu sleep 5 # execute command in a conatiner docker exec container_id cat /etc/hosts # interactive session inside container docker exec -it conatiner_id /bin/bash # run container in background/daemon mode docker run -d webapp # tail logs docker logs -f conatiner_id # attach to conatiner running in detach/daemon mode docker attach container_id # map ports, for example, to map port 80 on host to port 8080 in container dokcer run -p 80:8080 webapp