images和container:
images:跟平常使用的虚拟机的镜像一个意思,相当于一个模版。
container:是images运行时的的状态。docker对于运行过的image都保留一个状态(container),可以使用命令docker ps来查看正在运行的container,对于已经退出的container,则可以使用docker ps -a来查看。 如果你退出了一个container而忘记保存其中的数据,你可以使用docker ps -a来找到对应的运行过的container使用docker commit命令将其保存为image然后运行。
拉取镜像文件
(以mysql为例)
docker pull mysql
[root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker pull mysql Using default tag: latest latest: Pulling from library/mysql a10c77af2613: Pull complete b76a7eb51ffd: Pull complete 258223f927e4: Pull complete 2d2c75386df9: Pull complete 63e92e4046c9: Pull complete f5845c731544: Pull complete bd0401123a9b: Pull complete 3ef07ec35f1a: Pull complete c93a31315089: Pull complete 3349ed800d44: Pull complete 6d01857ca4c1: Pull complete 4cc13890eda8: Pull complete Digest: sha256:aeecae58035f3868bf4f00e5fc623630d8b438db9d05f4d8c6538deb14d4c31b Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest
查看系统中有哪些镜像文件
docker images [root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql latest b05128b000dd 12 days ago 516MB
查看正在运行的容器
docker ps [root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker ps ConTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a4906c25a761 mysql "docker-entrypoint.s…" 5 hours ago Up 4 hours 33060/tcp, 0.0.0.0:3312->3306/tcp, :::3312->3306/tcp mysqltest
进入容器里面
docker exec -it {ConTAINER ID} /bin/bash
[root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker exec -it a4906c25a761 /bin/bash
查看容器的运行日志
docker logs {ConTAINER ID}
[root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker logs a4906c25a761
2021-11-30 02:18:42+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
...
退出容器
exit
删除镜像
删除的顺序是 先删除 container,再删除image
1、先用命令:docker ps -a,找到 ConTAINER ID
2、再用命令删除container :docker rm {ConTAINER ID},如果container正在运行,则不能删除,
需要用命令停止该container的运行:docker stop {ConTAINER ID},然后在执行删除。
3、然后用命令删除image:docker rmi {IMAGE ID},在删除之前用命令查看下image id:docker images。
4、删除完后,用 docker images查看下看该image是否还存在。
查看docker的帮助会发现有两个与删除有关的命令rm和rmi
1、rm Remove one or more containers
2、rmi Remove one or more images
重启镜像container
[root@iZ2zeinb1j2xz9m1rtf1eoZ ~]# docker restart {ConTAINER ID}



