DEV Community

Pradipta
Pradipta

Posted on

Useful Docker Commands

Docker is a platform for developing, shipping and running applications. In this post, we'll discuss about some of the salient Docker commands used in our projects frequently.

docker pull
This command helps to pull the image from docker hub. If we do not specify the tag to be pulled, latest docker image will be pulled.

docker pull image:tag

docker pull mysql:8.0.33
8.0.33: Pulling from library/mysql
e2c03c89dcad: Pull complete 
68eb43837bf8: Pull complete 
796892ddf5ac: Pull complete 
6bca45eb31e1: Pull complete 
ebb53bc0dcca: Pull complete 
2e2c6bdc7a40: Pull complete 
6f27b5c76970: Pull complete 
438533a24810: Pull complete 
e5bdf19985e0: Pull complete 
667fa148337b: Pull complete 
5baa702110e4: Pull complete 
Digest: sha256:232936eb036d444045da2b87a90d48241c60b68b376caf509051cb6cffea6fdc
Status: Downloaded newer image for mysql:8.0.33
docker.io/library/mysql:8.0.33
Enter fullscreen mode Exit fullscreen mode

docker images
Shows the docker images downloaded to the local machine.

docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
mysql        8.0.33    041315a16183   11 days ago   565MB
Enter fullscreen mode Exit fullscreen mode

docker run
Runs the container from the docker image.

docker run -p6000:3306 --name some-mysql-new -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.0.33
0dacb1101ad336475f7ebcbc5e21cc9fb894f2bfa4c0a805f65d3ef1f39bf7e4
Enter fullscreen mode Exit fullscreen mode

-p(host port):(container port) - Host port gets bounded to the container port so that it can be accessible.
-d : Runs the container in the detached mode.

docker ps
Shows the list of running containers.

docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED              STATUS              PORTS                               NAMES
0dacb1101ad3   mysql:8.0.33   "docker-entrypoint.s…"   About a minute ago   Up About a minute   33060/tcp, 0.0.0.0:6000->3306/tcp   some-mysql-new
Enter fullscreen mode Exit fullscreen mode

docker stop
Stops a running docker container. The container id needs to be passed.

docker stop 0dacb1101ad3
Enter fullscreen mode Exit fullscreen mode

docker start
Starts a docker container. The container id needs to be passed.

docker start 0dacb1101ad3
Enter fullscreen mode Exit fullscreen mode

docker logs

Shows the logs of a Docker container. The container id needs to be passed.

docker logs 0dacb1101ad3
2023-07-16 14:02:16+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.33-1.el8 started.
2023-07-16 14:02:16+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2023-07-16 14:02:16+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.33-1.el8 started.
2023-07-16 14:02:16+00:00 [Note] [Entrypoint]: Initializing database files
2023-07-16T14:02:16.555166Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
2023-07-16T14:02:16.555434Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.33) initializing of server in progress as process 81
2023-07-16T14:02:16.562164Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-16T14:02:17.077951Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-16T14:02:18.844888Z 6 [Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
2023-07-16 14:02:23+00:00 [Note] [Entrypoint]: Database files initialized
2023-07-16 14:02:23+00:00 [Note] [Entrypoint]: Starting temporary server
2023-07-16T14:02:23.967805Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
2023-07-16T14:02:23.969395Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.33) starting as process 123
2023-07-16T14:02:23.984575Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-16T14:02:24.258224Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-16T14:02:24.669973Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-07-16T14:02:24.670204Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-07-16T14:02:24.673431Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
2023-07-16T14:02:24.732237Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: /var/run/mysqld/mysqlx.sock
2023-07-16T14:02:24.733339Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.33'  socket: '/var/run/mysqld/mysqld.sock'  port: 0  MySQL Community Server - GPL.
2023-07-16 14:02:24+00:00 [Note] [Entrypoint]: Temporary server started.
'/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'
Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/leap-seconds.list' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/leapseconds' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/tzdata.zi' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone1970.tab' as time zone. Skipping it.

2023-07-16 14:02:29+00:00 [Note] [Entrypoint]: Stopping temporary server
2023-07-16T14:02:29.418853Z 10 [System] [MY-013172] [Server] Received SHUTDOWN from user root. Shutting down mysqld (Version: 8.0.33).
2023-07-16T14:02:31.320144Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.33)  MySQL Community Server - GPL.
2023-07-16 14:02:31+00:00 [Note] [Entrypoint]: Temporary server stopped

2023-07-16 14:02:31+00:00 [Note] [Entrypoint]: MySQL init process done. Ready for start up.

2023-07-16T14:02:31.685058Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
2023-07-16T14:02:31.686585Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.33) starting as process 1
2023-07-16T14:02:31.694428Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-16T14:02:31.882615Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-16T14:02:32.331478Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-07-16T14:02:32.331559Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-07-16T14:02:32.334663Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
2023-07-16T14:02:32.367684Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
2023-07-16T14:02:32.367707Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.33'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
2023-07-16T14:07:21.221136Z 0 [System] [MY-013172] [Server] Received SHUTDOWN from user <via user signal>. Shutting down mysqld (Version: 8.0.33).
2023-07-16T14:07:22.110930Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.33)  MySQL Community Server - GPL.
2023-07-16 14:07:32+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.33-1.el8 started.
2023-07-16 14:07:32+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2023-07-16 14:07:32+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.33-1.el8 started.
'/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'
2023-07-16T14:07:33.176975Z 0 [Warning] [MY-011068] [Server] The syntax '--skip-host-cache' is deprecated and will be removed in a future release. Please use SET GLOBAL host_cache_size=0 instead.
2023-07-16T14:07:33.178454Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.33) starting as process 1
2023-07-16T14:07:33.185757Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2023-07-16T14:07:33.376968Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2023-07-16T14:07:33.689001Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2023-07-16T14:07:33.689518Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2023-07-16T14:07:33.693007Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
2023-07-16T14:07:33.743641Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Bind-address: '::' port: 33060, socket: /var/run/mysqld/mysqlx.sock
2023-07-16T14:07:33.744479Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.33'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
Enter fullscreen mode Exit fullscreen mode

docker exec
Get into the terminal of the container.

docker exec -it 0dacb1101ad3 /bin/bash
bash-4.4# ls
bin  boot  dev  docker-entrypoint-initdb.d  entrypoint.sh  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
bash-4.4# exit
exit
Enter fullscreen mode Exit fullscreen mode

-it refers to interactive.

docker image rm
Removes an image. Image name along with tag should be mentioned in the command.

docker image rm mysql:8.0.33 -f    
Untagged: mysql:8.0.33
Untagged: mysql@sha256:232936eb036d444045da2b87a90d48241c60b68b376caf509051cb6cffea6fdc
Deleted: sha256:041315a161837f8bb87361e13390abda7159b98aeedee5e6152a0bb7a9b45f27
Enter fullscreen mode Exit fullscreen mode

Top comments (0)