DEV Community

Cover image for Docker command for beginners
Zahir Din
Zahir Din

Posted on

Docker command for beginners

Create container

docker create <container_image>
Enter fullscreen mode Exit fullscreen mode

Remove image

docker rmi <container_image>
Enter fullscreen mode Exit fullscreen mode

Start container (start container without output)

docker start <container_id>
Enter fullscreen mode Exit fullscreen mode

Start container (start container with output)

docker start -a <container_id>
Enter fullscreen mode Exit fullscreen mode

Run container (install, create and start container)

docker run <container_image> <command_when_start>
Enter fullscreen mode Exit fullscreen mode
# -p is port mapping <local_browsing_port>:<container_running_port>
docker run -p 8000:8080 <container_image>
Enter fullscreen mode Exit fullscreen mode
# -d is to executed in background
docker run -d <container_image>
Enter fullscreen mode Exit fullscreen mode
# -p <host>:<container>
# -v <not_included> -v <host_path>:<container_path>
docker run -it -p 8080:80 -v /app/node_modules -v $(pwd):/app <container_id>
Enter fullscreen mode Exit fullscreen mode

List running container

docker ps
Enter fullscreen mode Exit fullscreen mode

List all container

docker ps -a
Enter fullscreen mode Exit fullscreen mode

Removing stopped container

docker system prune
Enter fullscreen mode Exit fullscreen mode

Get log for certain container

docker logs <container_id>
Enter fullscreen mode Exit fullscreen mode

Stop container (it will wait maybe 10 sec before it kill it)

docker stop <container_id>
Enter fullscreen mode Exit fullscreen mode

Kill container (kill container immediately)

docker kill <container_id>
Enter fullscreen mode Exit fullscreen mode

Execute an additional command in container

# -i allow to enter in text (input) to containers terminal
# -t show a nice formatted input (eg: root@ip_address ~%  )
# -it is combined flag between -i and -t
docker exec -it <container_id> <command_to_execute>
Enter fullscreen mode Exit fullscreen mode

Getting full access or command prompt terminal in container

# name_of_programs (eg: bash, powershell, zsh, sh)
docker exec -it <container_id> <name_of_program>
Enter fullscreen mode Exit fullscreen mode

Run docker file / Create docker image

# go to Dockerfile/project directory
docker build <Dockerfile directory>
Enter fullscreen mode Exit fullscreen mode
# create docker image with name
docker build -t <my_docker_id>/<project>:<version> <Dockerfile directory>
Enter fullscreen mode Exit fullscreen mode
# -f is for custom filename other than Dockerfile
docker build -f <filename> <Dockerfile directory>
Enter fullscreen mode Exit fullscreen mode

Create docker image from container

# -c is to set default command (in array) when image is running
docker commit -c "CMD ['ls', '-lah', '/var/www/html']" <container_id>
Enter fullscreen mode Exit fullscreen mode

Run docker compose

docker-compose up
Enter fullscreen mode Exit fullscreen mode
# —build is to build/rebuild containers
docker-compose up —build
Enter fullscreen mode Exit fullscreen mode
# -d is to executed in background
docker-compose up -d
Enter fullscreen mode Exit fullscreen mode

Stop docker compose

docker-compose down
Enter fullscreen mode Exit fullscreen mode

List container in project with docker-compose

docker-compose ps
Enter fullscreen mode Exit fullscreen mode

Postmark Image

Speedy emails, satisfied customers

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

nextjs tutorial video

Youtube Tutorial Series 📺

So you built a Next.js app, but you need a clear view of the entire operation flow to be able to identify performance bottlenecks before you launch. But how do you get started? Get the essentials on tracing for Next.js from @nikolovlazar in this video series 👀

Watch the Youtube series

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay