EN
Docker - start new docker container using existing image
7
points
In this short article, we would like to show how to start a new Docker container using an existing image.
Quick solution:
docker run -d -i -t MY_IMAGE_ID /bin/bash
# or
docker run -d -i -t --name MY_NEW_CONTAIER_NAME MY_IMAGE_ID /bin/bash
Practical example
The following command creates a container for indicated image (4ea2949e4cb8
):
docker run -d -i -t 4ea2949e4cb8 /bin/bash
# or with port redirection and image/repository name
docker run -d -i -t --name postgres-shop -p 5432:5432 postgres /bin/bash
Where:
-d
means the terminal is detached (we will not see in command line docker container output),-i
means keeping opened STDIN even terminal is detached,-t
means the container will use pseudo-tty,--name postgres-shop
means the container will be named aspostgres-shop
,-p 5432:5432
means5432
container port will be redirected tolocalhost:5432
port,4ea2949e4cb8
is IMAGE ID that should be changed to the current one,/bin/bash
used tty.
You can run docker images
command to see all available images:
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
postgres latest 4ea2949e4cb8 10 days ago 314MB
You can run docker ps
command to see all started containers (started from images):
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e4a5a3b62cd4 4ea2949e4cb8 "docker-entrypoint.s…" 1 second ago Up 1 second 5432/tcp reverent_panini
Running docker image with attached terminal
Below command runs image as Docker container opening terminal in the same command line.
docker run -i -t 4ea2949e4cb8 /bin/bash