在Docker上,-- --rm
选项表示退出容器时会自动将其删除。
$ docker run --rm <container_id>
完成🙂
请继续阅读以了解有关--rm
更多信息。
1.取出一个容器
在Docker上,容器是映像的实例,我们可以从映像创建多个容器。 如果退出或停止了容器,则该容器在计算机上仍然存在,我们需要手动删除已停止的容器以释放磁盘空间。
此命令将删除一个Docker容器。
$ docker rm <container_id>
使用--rm
,容器将在退出时自动删除。
2.泊坞窗–rm
查看docker --rm
示例。
2.1列出所有图像,然后使用Debian图像测试--rm
选项。
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest 78096d0a5478 9 days ago 1.22MB
markdownhtml 1.1 18e69a3a2aae 12 days ago 144MB
debian 0.1 ae0872208331 7 weeks ago 114MB
2.2列出所有容器,正在运行和已停止的容器。 在下面的示例中,我们有一个停止的容器。
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d362659da5fc markdownhtml:1.1 "java -jar app.jar" 11 days ago Exited (255) 10 days ago 0.0.0.0:80->8080/tcp xenodochial_volhard
2.3我们从Debian镜像启动一个容器并运行ls -la
命令。 容器完成了命令作业并退出。
$ docker run debian ls -la
total 72
drwxr-xr-x 1 root root 4096 May 23 04:04 .
drwxr-xr-x 1 root root 4096 May 23 04:04 ..
-rwxr-xr-x 1 root root 0 May 23 04:04 .dockerenv
drwxr-xr-x 2 root root 4096 Mar 27 00:00 bin
drwxr-xr-x 2 root root 4096 Feb 1 17:09 boot
drwxr-xr-x 5 root root 340 May 23 04:04 dev
drwxr-xr-x 1 root root 4096 May 23 04:04 etc
drwxr-xr-x 2 root root 4096 Feb 1 17:09 home
drwxr-xr-x 7 root root 4096 Mar 27 00:00 lib
drwxr-xr-x 2 root root 4096 Mar 27 00:00 lib64
drwxr-xr-x 2 root root 4096 Mar 27 00:00 media
#...
2.4再次列出所有容器,停止的Debian容器在此处列出,停止的容器可能会占用磁盘空间。 在以下示例中,新的停止的crazy_swirles
容器占用10MB磁盘空间。
$ ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cf381d99f454 debian "ls -la" About a minute ago Exited (0) About a minute ago crazy_swirles (NEW Container)
d362659da5fc markdownhtml:1.1 "java -jar app.jar" 11 days ago Exited (255) 10 days ago 0.0.0.0:80->8080/tcp xenodochial_volhard
# show file size with -s
# display short output with --format
$ docker ps -as --format "{{.ID}}: {{.Image}}: {{.Status}}: {{.Size}}"
cf381d99f454: debian: Exited (0) 9 minutes ago: 10MB (virtual 114MB)
d362659da5fc: markdownhtml:1.1: Exited (255) 10 days ago: 39.4MB (virtual 184MB)
如果我们测试了很多容器,这将很快占用磁盘空间。 我们可以使用单个命令删除已停止的容器 ,但是我们有一个更好的选项--rm
,它将在退出容器时将其删除。
2.5再次从Debian映像运行容器,然后发送echo
命令并退出容器,这一次使用--rm
选项。
$ docker run --rm debian echo 'hello'
'hello'
2.6再次列出容器; 这次,列表中没有新的停止容器。 使用docker --rm
,上述停止的容器在退出时将被删除。
$ ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cf381d99f454 debian "ls -la" About a minute ago Exited (0) About a minute ago crazy_swirles
d362659da5fc markdownhtml:1.1 "java -jar app.jar" 11 days ago Exited (255) 10 days ago 0.0.0.0:80->8080/tcp xenodochial_volhard
做完了 🙂
所有评论(0)