Docker 常见容器问题

Docker 常见容器问题

Docker 轻松学习


一、Docker 是什么?

docker是一种技术,能使得应用在任何环境都能用的打包技术。打包出的东西叫镜像。

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

容器退出后会处于终止(exited)状态,此时可以通过 docker container ls -a 查看,其中的数据也不会丢失。
代码如下(示例):

docker container ls -a 

还可以通过 docker start 命令来启动它。只有删除掉容器才会清除所有数据。

 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 地址?

docker network create -d bridge --subnet 172.0.0.1/16 my-net

docker run --network=my-net --ip=127.0.0.1 -itd --name=my-container busybox

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

Ctrl-p 
Ctrl-q

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

* 创建镜像时 Dockerfile 要通过 EXPOSE 指定正确的开放端口;
* 容器启动时指定 PublishAllPort = true。

九、可以在一个容器中同时运行多个应用进程么?

一般并不推荐在同一个容器内运行多个应用进程。如果有类似需求,可以通过一些额外的进程管理机制,比如 supervisord 来管理所运行的进程。

十、如何控制容器占用系统资源(CPU、内存)的份额?

在使用 docker create 命令创建容器或使用 docker run 创建并启动容器的时候,可以使用 -c|–cpu-shares[=0] 参数来调整容器使用 CPU 的权重;使用 -m|–memory[=MEMORY] 参数来调整容器使用内存的大小。

十一、Docker启动报错 Error response from daemon

Error response from daemon: driver failed programming external connectivity on endpoint gloomy_kirch

systemctl restart firewalld
systemctl restart docker

总结

遇到 Docker 问题不要怕,记下来,下次省的忘记了

希望这个博客能对你有所益处。我是轻王,我为自己代言。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫轻王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值