今天在删除容器的时候发现是拥有一个容器无法删除

[root@master ~]# docker rm -f $(docker ps -aq)
9e94bb15009e
255061e3b03a
Error response from daemon: removal of container 7480f7b75d90 is already in progress

解决办法:
1、查看docker安装路径

[root@master ~]# docker info | grep RootDocker Root Dir: /opt/kube-install/k8s/docker/containerd

2、切换到containers目录下
Docker在不重建容器的情况下,日志文件默认会一直追加,时间一长会逐渐占满服务器的硬盘的空间,内存消耗也会一直增加。Docker 的日志文件存在 /var/lib/docker/containers 目录中!

cd /opt/kube-install/k8s/docker/containerd/containers

ls发现有以下目录
0659e131bc28176946e3202012dfa48b0f27022df6aa654d00247e4131d415e9 86254808b4d146c40749eed628e70b81bcf1ba671168a7bce799f8d8a3f0d17a
3、关闭容器

systemctl stop docker

4、删除所有文件

rm -rf *

5、启动docker问题解决

[root@master containers]# systemctl start docker
[root@master containers]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

清理日志
如果docker容器正在运行,那么使用rm -rf方式删除日志后,通过df -h会发现磁盘空间并没有释放。原因是在Linux或者Unix系统中,通过rm -rf或者文件管理器删除文件,将会从文件系统的目录结构上解除链接(unlink)。如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。正确姿势是cat /dev/null > *-json.log,当然你也可以通过rm -rf删除后重启docker。

#!/bin/sh
echo "======== start clean docker containers logs ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs  do  echo "clean logs : $log"  cat /dev/null > $log  done
echo "======== end clean docker containers logs ========"

设置Docker容器日志大小(治本)

  • 设置一个容器服务的日志大小上限
# docker-compose.yml
nginx: image: nginx:1.12.1 restart: always logging: driver: “json-file” options: max-size: “5g”

重启nginx容器之后,其日志文件的大小就被限制在5GB,再也不用担心了。

  • 全局设置
# 新建/etc/docker/daemon.json,若有就不用新建了。添加log-dirver和log-opts参数,样例如下:
# vim /etc/docker/daemon.json
{"registry-mirrors": ["*"],"log-driver":"json-file","log-opts": {"max-size":"500m", "max-file":"3"}
}

max-size=500m:意味着一个容器日志大小上限是500M,
max-file=3:意味着一个容器有三个日志,分别是id+.json、id+1.json、id+2.json。

systemctl daemon-reload systemctl restart docker

注意:设置的日志大小,只对新建的容器有效。

In this competitive society, I hope you will not be like most people!

Error response from daemon: removal of container XXX is already in progress相关推荐

  1. 解决:Error response from daemon: Cannot restart container xxx: driver failed programming external

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 我的情况:个人站点访问不了,重启了阿里云ECS服务器后,发现服务器 80端口不通,于是重启了 ...

  2. Error response from daemon: removal of container XXXXXis already in progress解决方法

    [root@www.moneyslow.com ~]# systemctl restart docker 重启docker后,发现一个容器状态开始为Dead,后来转为 Removal In Progr ...

  3. docker: Error response from daemon: Conflict. The container name xxx is already in use by container

    docker: Error response from daemon: Conflict. The container name xxx is already in use by container ...

  4. docker 错误:Error response from daemon: cannot stop container: connect: connection refused: unknown...

    docker 错误:Error response from daemon: cannot stop container: 795e4102b2de: Cannot kill container 795 ...

  5. Error response from daemon: Conflict. The container name /mysql is already in use by container

    执行: docker run --name mysql -p 3306:3306 -v /root/bo/data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWOR ...

  6. 【解决方案】Error response from daemon: Conflict. The container name /mongo is already in use by contain

    一.错误信息 /usr/bin/docker-current: Error response from daemon: Conflict. The container name "/mong ...

  7. 【已解决】ocker: Error response from daemon: Conflict. The container name “/nginx“ is alrea.....

    Docker Run 报错 docker: Error response from daemon: Conflict. The container name "/nginx" is ...

  8. Error response from daemon: Conflict. The container name “/redis“ is already in use by container “93

    前言 最近使用docker,然后启动时报错: 错误信息 Error response from daemon: Conflict. The container name "/redis&qu ...

  9. (2019.10.16已解决)docker: Error response from daemon: Conflict. The container name /replay1 is alread

    docker: Error response from daemon: Conflict. The container name "/replay1" is already in ...

  10. docker : Error response from daemon: Conflict. The container name *** is already in use

    使用docker 出现Error response from daemon: Conflict. The container name "***" is already in us ...

最新文章

  1. matlab 显示3d频谱_matlab 关于频谱分析程序集锦
  2. MATLAB 内存容量修改
  3. mac下使用自带的apache与php
  4. 几种服务器端IO模型的简单介绍及实现(转载)
  5. 【模拟】Ingenious Lottery Tickets
  6. 7-11 名人堂与代金券 (25 分)
  7. 【EASYDOM系列教程】之属性操作
  8. 不是方阵有逆矩阵吗_Lecture 3 | 乘法和逆矩阵
  9. CSS 自定义属性 -- 使用 JS 和不使用 JS
  10. 机器学习监督学习之分类算法---朴素贝叶斯理论知识
  11. Python实现图像信息隐藏
  12. CString,string,char*之间的转换
  13. dda算法_C和C ++中的DDA线图绘制算法
  14. 住在我隔壁的一对大学生夫妻(十五)
  15. 盘点python socket 中recv函数的坑
  16. 快乐的实现单独页面横屏
  17. 百度tts语音合成使用
  18. Deeplink最全解析
  19. 【源码】林业害虫检测小程序(可拓展美化)
  20. 本地文件共享到云服务器,本地文件共享到云服务器

热门文章

  1. HTML粘性定位,CSS:position——绝对、相对、固定、粘性定位的简单记录
  2. 情绪满盈,心猿似马,人生80%的时间都在自我内耗
  3. Opencv学习四图像操作(反差色处理)
  4. 内存虚拟化硬件基础——EPT
  5. 利用pygame实现大鱼吃小鱼游戏
  6. TypeScript快速上手
  7. 电影拍摄胶片比例_用于创建自己的电影胶片的10个很酷的Photoshop教程
  8. 推荐一款3D插件可以用纯html+css打造3D效果
  9. 探探这只反语言暴力公益短片 提供了一个新视角
  10. Python制作自己的软件安装包程序