参考

主要是方便平常使用,做一个记录。

一、删除容器与镜像

1. 列出所有容器ID

  1. docker ps -aq

2. 查看所有运行或者不运行容器

  1. docker ps -a

3. 停止所有的container(容器),这样才能够删除其中的images:

  1. docker stop $(docker ps -a -q) 或者 docker stop $(docker ps -aq)

4. 如果想要删除所有container(容器)的话再加一个指令:

  1. docker rm $(docker ps -a -q) 或者 docker rm $(docker ps -aq)

5. 查看当前有些什么image

  1. docker images

6. 删除images(镜像),通过image的id来指定删除谁

  1. docker rmi <image id>

7. 想要删除untagged images,也就是那些id为的image的话可以用

  1. docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

8. 要删除全部image(镜像)的话

  1. docker rmi $(docker images -q)

9. 强制删除全部image的话

  1. docker rmi -f $(docker images -q)

10. 从容器到宿主机复制

  1. docker cp tomcat:/webapps/js/text.js /home/admin
  2. docker cp 容器名: 容器路径 宿主机路径

11. 从宿主机到容器复制

  1. docker cp /home/admin/text.js tomcat:/webapps/js
  2. docker cp 宿主路径中文件 容器名 容器路径

12. 删除所有停止的容器

  1. docker container prune

13. 删除所有不使用的镜像

  1. docker image prune --force --all或者docker image prune -f -a

14. 停止、启动、杀死、重启一个容器

  1. docker stop Name或者ID
  2. docker start Name或者ID
  3. docker kill Name或者ID
  4. docker restart name或者ID

15. docker进入容器,查看配置文件

  1. docker exec :在运行的容器中执行命令
  2. -d :分离模式: 在后台运行
  3. -i :即使没有附加也保持STDIN(标准输入) 打开,以交互模式运行容器,通常与 -t 同时使用;
  4. -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  5. docker exec -it f94d2c317477 /bin/bash

16. 出现root@f94d2c317477:/usr/share/elasticsearch/config# vi elasticsearch.yml bash: vi: command not found

  1. apt-get update && apt-get install vim -y

17. 修改配置、退出容器

  • 如果要正常退出不关闭容器,请按Ctrl+P+Q进行退出容器;
  • 如果使用exit退出,那么在退出之后会关闭容器,可以使用下面的流程进行恢复

使用docker restart命令重启容器
使用docker attach命令进入容器