Centos故障01:Docker容器丢失
问题
一测试环境,配置及应用如下:
[Centos ~]# rpm -q centos-release
centos-release-7-6.1810.2.el7.centos.x86_64
应用:
Docker
Docker-Mysql
Docker-Mongo
dotnetcore-webapi
RabbitMq
Redis
Nginx
年后上班发现dotnetcore-api 和docker应用无法使用。
解决
查找Docker 容器: docker ps -a 返回空。
创建Mysql容器提示容器已存在。
打开rabbitmq web管理端,发现磁盘空间报警。
# 查看磁盘分区状况
df -l
# 逐层查找占用空间大的文件夹
du -h --max-depth=1
查到占用空间大的为3个dotnet core应用目录,进入目录发现有大量 core.xxxx文件产生。
经查原因分别为:
1、某一dotnet core 项目端口占用导致异常产生core dump文件,最后磁盘空间满;
2、重启后docker 容器异常;
3、由于无法访问mysql和mongo,另两项目也无法正常启动。
删除core dump文件,停止 pm2项,重启后发现 docker 容器正常了。
启动容器,启动 pm2 项
遗留问题
dotnet core 应用异常会创建大量 core dump files。
查询 ulimit -c 返回0
linux命令回顾
#查看80端口占用情况
lsof -i tcp:80
#列出所有端口
netstat -ntlp
#查看centos版本
rpm -q centos-release
#查看docker容器运行情况(含历史)
docker ps -a
# 查看磁盘分区状况
df -l
# 逐层查找占用空间大的文件夹
du -h --max-depth=1
______________________________________
生活,要用圣人的胸怀面对,用科学的方法支配,
用皇帝的御膳养胃,用清洁的空气洗肺,
用小猪的感觉去睡,用太阳的热情灌水。
______________________________________