镜像
docker pull <镜像>
下载某个docker镜像
docker images
显示本地已有的docker镜像列表。
docker rmi <镜像>
删除本地的某个docker镜像
- 如何解决 docker rmi 包名 提示 No such image: hyperf/hyperf
以下是想要删除hyperf/hyperf镜像时发现删不掉的解决办法:
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 
 | [root@localhost ~]# docker rmi hyperf/hyperfError: No such image: hyperf/hyperf
 [root@localhost ~]# docker images
 REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
 hyperf/hyperf       7.2-alpine-cli      4fa6de156d55        5 months ago        80.4MB
 [root@localhost ~]# docker rmi hyperf/hyperf^C
 [root@localhost ~]# docker rmi hyperf/hyperf:7.2-alpine-cli
 Untagged: hyperf/hyperf:7.2-alpine-cli
 Untagged: hyperf/hyperf@sha256:6d6560e63efc5bb8180f35fa2e309641cbd9191a27b986e44e578f261195aa5d
 Deleted: sha256:4fa6de156d552e9b3d90ebd06d187831bc509e7bed226712c9001dc791d377b1
 Deleted: sha256:e789f9299ab1b9d32780ebde4f06c576d047575c390b41ee0d3caa03567b1011
 Deleted: sha256:47c90e47b5812f2fb982658c9b2366b2bfaa98bde4e740a5f3339f2dd3c3b17f
 Deleted: sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81
 [root@localhost ~]#
 
 | 
容器
docker rm
删除本地的某个docker容器,加上 -a 后可以删除运行中的容器。
注:容器id是指通过docker ps获取的容器列表,而不是docker images获取的镜像列表
回到容器 nsenter
退出终端之后想要再回到docker界面可以使用 nsenter 命令:
| 12
 3
 4
 5
 6
 
 | # 首先获取containerIddocker ps -a
 # 首先获取进程的pid
 docker inspect --format "{{ .State.Pid }}" containerId
 # 使用nsenter进入该容器
 nsenter --target <pid> --mount --uts --ipc --net --pid
 
 | 
| 12
 3
 4
 
 | # 首先获取containerIddocker ps -a
 # 使用attach进入
 docker attach containerId
 
 | 
2020.10.13更新
ps: 今天docker stop了一下,发现通过 docker inspect --format "{{ .State.Pid }}" 获取到的pid为0了。这时候运行下docker start 即可
容器跟随docker自动启动
在docker run 里加上--restart=always,这样docker重启后会自动重启容器。