Actually, I cannot call this a tutorial. Its more like a self note for my self to get started with Docker. I am new to Docker and I think Docker has a promising future better than ordinary virtualization technology. I am using Ubuntu 16.04 to install Docker, you can read it here if you want to install Docker on Ubuntu.
Search Image from repository
On this example, I want to pull an image called “hello-world”. Before we pull an image, we can do a search task. The following example shown how to search any images that contains “hello-world”.
root@ip-172-26-4-114:~# docker search hello-world NAME DESCRIPTION STARS OFFICIAL AUTOMATED hello-world Hello World! (an example of minimal Docker... 298 [OK] tutum/hello-world Image to test docker deployments. Has Apac... 34 [OK] dockercloud/hello-world Hello World! 12 [OK] marcells/aspnet-hello-world ASP.NET vNext - Hello World 4 [OK] neoxsys/hello-world hello-world container based on Ubuntu 16.0... 1 [OK] waleedsamy/hello-world-expressjs-docker Hello world express sample, return `Hello ... 1 [OK] carinamarina/hello-world-app This is a sample Python web application, r... 1 [OK] scottnakada/angular2-docker-hello-world Angular 2 Hello World Sample Application u... 1 [OK] gscrivano/hello-world hello world example system container 0 [OK] utanna/hello-world Nginx hello-world 0 [OK] crccheck/hello-world Hello World web server in under 2.5 MB 0 [OK] infrastructureascode/hello-world A tiny "Hello World" web server with a hea... 0 [OK] jerzhang/hello-world Hello world automated build 0 [OK] navycloud/hello-world Navy hello world 0 [OK] helloworld314/hello-world-docker Hello world docker 0 [OK] mgueury/docker-hello-world Simple Hello World Example 0 [OK] dharmit/hello-world hello world 0 [OK] hoto/hello-world Nodejs hello world application. 0 [OK] wowgroup/hello-world Minimal web app for testing purposes 0 [OK] jmreeve007/hello-world Create automated build for changes to hell... 0 [OK] andreamocci/docker-hello-world Docker hello world. 0 [OK] akshaykawathalkar/hello-world 13 feb hello world 0 [OK] wodge/docker-hello-world Hello World test for auto update to Docker... 0 [OK] occslab/docker-hello-world Simple Hello World Example 0 [OK] n8io/hello-world A simple hello world node.js app to test d... 0 [OK]
Pull a Docker Image
The following example showing how to pull a container called hello-world
root@ip-172-26-4-114:~# docker pull hello-world Using default tag: latest latest: Pulling from library/hello-world 78445dd45222: Pull complete Digest: sha256:c5515758d4c5e1e838e9cd307f6c6a0d620b5e07e6f927b07d05f6d12a1ac8d7 Status: Downloaded newer image for hello-world:latest
Now check any available images on our system
root@ip-172-26-4-114:~# docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest 48b5124b2768 3 months ago 1.84 kB
Run a Docker container
Now we have an image called hello-world. Now we can run a container with that image.
root@ip-172-26-4-114:~# docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://cloud.docker.com/ For more examples and ideas, visit: https://docs.docker.com/engine/userguide/
Show any running container
root@ip-172-26-4-114:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Since there is no running container, the list is empty. We can try another command to show any container that we ran previously
root@ip-172-26-4-114:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8bbb37d610fc hello-world "/hello" About a minute ago Exited (0) About a minute ago loving_clarke 7faa44a47a3b hello-world "/hello" 2 minutes ago Exited (0) 2 minutes ago tender_mccarthy
Use rm command to remove the containers. See the example below. The rm command is followed by the container id.
root@ip-172-26-4-114:~# docker rm 8bbb37d610fc 8bbb37d610fc
Enough for now. Will continue to the next post. Lets learn Docker.