zoukankan      html  css  js  c++  java
  • Docker常见问题

    如何批量清理临时镜像文件?

    答:可以使用 docker image prune 命令。

    本地的镜像文件都存放在哪里?

    答:与 Docker 相关的本地资源默认存放在 /var/lib/docker/ 目录下,以 overlay2 文件系统为例,其中 containers 目录存放容器信息,image 目录存放镜像信息,overlay2 目录下存放具体的镜像层文件。

    容器退出后,通过 docker container ls 命令查看不到,数据会丢失么?

    答:容器退出后会处于终止(exited)状态,此时可以通过 docker container ls -a 查看。其中的数据也不会丢失,还可以通过 docker start 命令来启动它。只有删除掉容器才会清除所有数据。

    如何停止所有正在运行的容器?

    答:可以使用 docker stop $(docker container ls -q) 命令。

    如何批量清理已经停止的容器?

    答:可以使用 docker container prune 命令。

    如何获取某个容器的 PID 信息?

    答:可以使用

    docker inspect --format '{{ .State.Pid }}' <CONTAINER ID or NAME>
    

    如何获取某个容器的 IP 地址?

    答:可以使用

    docker inspect --format '{{ .NetworkSettings.IPAddress }}' <CONTAINER ID or NAME>
    

    如何给容器指定一个固定 IP 地址,而不是每次重启容器 IP 地址都会变?

    答:使用以下命令启动容器可以使容器 IP 固定不变

    docker network create -d bridge --subnet 172.25.0.0/16 my-net
    docker run --network=my-net --ip=172.25.3.3 -itd --name=my-container busybox
    

    如何临时退出一个正在交互的容器的终端,而不终止它?

    答:按 Ctrl-p Ctrl-q。如果按 Ctrl-c 往往会让容器内应用进程终止,进而会终止容器。

    使用 docker port 命令映射容器的端口时,系统报错“Error: No public port ‘80’ published for xxx”?

    答:

    • 创建镜像时 Dockerfile 要通过 EXPOSE 指定正确的开放端口;
    • 容器启动时指定 PublishAllPort = true
  • 相关阅读:
    过滤评论中的表情
    谈谈你对多进程,多线程,以及协程的理解
    什么是多线程竞争?
    解释以下什么是锁,有哪几种锁?
    .什么是死锁
    多线程交互访问数据,如果访问到了就不访问了?
    什么是线程安全,什么是互斥锁
    说说下面几个概念:同步,异步,阻塞,非阻塞?
    什么是僵尸进程和孤儿进程?怎么避免僵尸进程?
    python中进程与线程的使用场景
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/13284204.html
Copyright © 2011-2022 走看看