Working with Docker Images

by XDK 25. August 2019 13:42

Command to run a busybox docker image

ubuntu@ip-172-31-59-138:~$ docker run --rm busybox:latest /bin/echo "Hello world"
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
ee153a04d683: Pull complete
Digest: sha256:9f1003c480699be56815db0f8146ad2e22efea85129b5b5983d0e0fb52d9ab70
Status: Downloaded newer image for busybox:latest
Hello world

Note:
clean up (--rm) By default a container’s file system persists even after the container exits. This makes debugging a lot easier (since you can inspect the final state) and you retain all your data by default. But if you are running short-term foreground processes, these container file systems can really pile up. If instead you’d like Docker to automatically clean up the container and remove the file system when the container exits, you can add the --rm flag:

Command to run a tomcat:jre8 docker image and change the container to listen to port 80 instead of tomcat's default port 8080 at runtime.

ubuntu@ip-172-31-59-138:~$ docker run -d -p 80:8080 tomcat:jre8
Unable to find image 'tomcat:jre8' locally
jre8: Pulling from library/tomcat
c5e155d5a1d1: Pull complete
221d80d00ae9: Pull complete
4250b3117dca: Pull complete
d1370422ab93: Pull complete
deb6b03222ca: Pull complete
9cdea8d70cc3: Pull complete
968505be14db: Pull complete
04b5c270ac81: Pull complete
301d76fcab1f: Pull complete
57ca7a0b9e79: Pull complete
3c1d6826d7a3: Pull complete
Digest: sha256:7cdf9dca1472da80e7384403c57b0632753a3a5cdf4f310fc39462e08af8ef39
Status: Downloaded newer image for tomcat:jre8
59cb47cef38dd64376188c66e6dbe7288840e6e68703548c12d1cdf7018f7f9d

Note: In the above command, -d will detach our terminal, -P will publish all exposed ports to random ports

 

Command to verify the java version in the container.

ubuntu@ip-172-31-59-138:~$ docker exec -it 59cb47cef38d java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1~deb9u1-b01)
OpenJDK 64-Bit Server VM (build 25.212-b01, mixed mode)

Note: -i Keep STDIN open even if not attached.-t Allocate a pseudo-TTY (Text Only Console).


Command to stop the container

ubuntu@ip-172-31-59-138:~$ docker stop 59cb47cef38d
59cb47cef38d
ubuntu@ip-172-31-59-138:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

Command to remove docker container

ubuntu@ip-172-31-59-138:~$ docker rm 59cb47cef38d
59cb47cef38d
ubuntu@ip-172-31-59-138:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

Command to list the docker images

ubuntu@ip-172-31-59-138:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest db8ee88ad75f 5 weeks ago 1.22MB
tomcat jre8 3639174793ba 3 months ago 463MB

Command to remove docker image

ubuntu@ip-172-31-59-138:~$ docker rmi 3639174793ba
Untagged: tomcat:jre8
Untagged: tomcat@sha256:7cdf9dca1472da80e7384403c57b0632753a3a5cdf4f310fc39462 e08af8ef39
Deleted: sha256:3639174793bafbf0f22aeaf6096842f563de3154fe7c756d04966eca1fe4e5 5d
Deleted: sha256:ad683ea82dd8cc2ea298e08626031a01b3bf94a35714572774405f04daa0fe a8
Deleted: sha256:c43fe4301f09c132eefa0707afd2995ade93975a3a7cd11c7ba61b616b5c59 e2
Deleted: sha256:4abee72d794e2aedaa1fd461440964ec8306780c9e22b7b363e953730613e1 45
Deleted: sha256:5f01074ca9f442239d769dffd326dc5004d8bda0365a4767fff8af8e5f58ee 41
Deleted: sha256:fc82c5f00299a2e87402e3090f53e161801b9c6aa6c86121c36e7bb277c68c d0
Deleted: sha256:067619b0ac688892f0e9f086135168006bdc58bc40d902c570772250ea264b 3c
Deleted: sha256:6b6450559d31f9c4e78c7ca449410807188a4d5f88fecb4db7c0f5efbbd9bc 2c
Deleted: sha256:fa14a85b824e4d22bebf8a3787f80f7b13a87e63636efc630416350d3cb09c 8d
Deleted: sha256:a9a9c8853295275070975beba78ec0f573172e6e41b30232a00d8af0d49b8e f3
Deleted: sha256:ddf0293e8e23246803d265b158ffbb9453d925fe392b43515984815853e912 1b
Deleted: sha256:f94641f1fe1f5c42c325652bf55f0513c881c86b620b912b15460e0bca07cc 12

Verify!

ubuntu@ip-172-31-59-138:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest db8ee88ad75f 5 weeks ago 1.22MB

Tags:

Amazon Web Service | Azure Native DevOps | Docker | Microsoft Azure Services

Comments are closed

About the author

My name is Xavier Dilip Kumar Jayaraj having 13+ years of IT experience which includes solid experience and depth Knowledge in Application Life Cycle Management, Configuration Management, Implementation and Support using TFS on-premises and Azure DevOps. I have invested in gaining DevOps knowledege to expertise with Cloud Computing providers namely Microsoft Azure and Amazon Web Services in recent years. I am very positive to learn and adapt emerging technologies to client’s environment.

Microsoft Certified: Azure Administrator Associate

Microsoft Certified: Azure DevOps Engineer Expert

DevOps Engineer Certificate Program | Transcript 

OTP-AWSD5: AWS IoT: Developing and Deploying an Internet of Things

[PCEP-30-01] PCEP – Certified Entry-Level Python Programmer

Quotes I Like

"Failure will never overtake me if my determination to succeed is strong enough."  - Dr. APJ. Abdul Kalam

"Always be yourself, express yourself, have faith in yourself, do not go out and look for a successful personality and duplicate it." - Bruce Lee

"Technology is just a tool. In terms of getting the kids working together and motivating them, the teacher is the most important." - Bill Gates

"Innovation distinguishes between a leader and a follower." - Steve Jobs

CategoryList

Disclaimer

The information provided here is based on my expreriences, troubleshooting and online/offline findings. It can be used as is on your own risk without any warranties and I impose no rights.