【已完成】Docker环境中运行宝塔面板pids无限增加
环境:系统: Ubuntu22.04、deepin 20v3Docker版本: Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1
宝塔版本:免费版:8.2.0
运行中的功能:仅运行宝塔面板
现象:pyhton3进程无限增加,导致资源耗尽,网站无法访问
docker 内部信息
root 2260.00.0 0 0 ? Z 21:40 0:00 <defunct>
root 2880.00.0 0 0 ? Z 21:41 0:00 <defunct>
root 2900.10.0 0 0 ? Z 21:41 0:00 <defunct>
root 2970.00.0 0 0 ? Z 21:42 0:00 <defunct>
root 3020.00.0 0 0 ? Z 21:42 0:00 <defunct>
root 3040.10.0 0 0 ? Z 21:42 0:00 <defunct>
root 3190.00.0 0 0 ? Z 21:43 0:00 <defunct>
root 3210.20.0 0 0 ? Z 21:43 0:00 <defunct>
root 3380.00.0 0 0 ? Z 21:44 0:00 <defunct>
root 3500.00.0 0 0 ? Z 21:44 0:00 <defunct>
root 3520.00.0 0 0 ? Z 21:44 0:00 <defunct>
root 3540.10.0 0 0 ? Z 21:44 0:00 <defunct>
root 3740.00.0 0 0 ? Z 21:45 0:00 <defunct>
root 3760.20.0 0 0 ? Z 21:45 0:00 <defunct>
root 3840.10.0 0 0 ? Z 21:46 0:00 <defunct>
root 3890.00.0 0 0 ? Z 21:46 0:00 <defunct>
root 3910.30.0 0 0 ? Z 21:46 0:00 <defunct>
root 3960.20.0 0 0 ? Z 21:47 0:00 <defunct>
root 3980.70.0 0 0 ? Z 21:47 0:00 <defunct>
root 4001.00.0 0 0 ? Z 21:48 0:00 <defunct>
root 4026.00.0 0 0 ? Z 21:48 0:00 <defunct>
root 404 46.00.0 0 0 ? Z 21:48 0:00 <defunct>
root@7dbd6be9cf03:/# ps aux | grep "python3" | wc -l
233
docker外部监控
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
7dbd6be9cf03 hiswi-cloud 0.11% 84.64MiB / 3.32GiB 2.49% 3.61MB / 11.7MB 5.98MB / 18.1MB 256
您好,需要了解一下,您这边在出现这个现象前是做了什么操作呢,是安装面板后就出现了嘛
方便截图一下history|grep sh的信息吗 docker 中安装面板后,配置了网站,自动申请 ssl 证书,但是我网站相关的程序我一个也没有启动,我安装的程序有nginx、phpmyadmin、 php74 、redis、mysqld,就没有其他操作了。
步骤 1:
root@7dbd6be9cf03:/# bt 3
===============================================
正在执行(3)...
===============================================
sh: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
Starting Bt-Panel.... done
Starting Bt-Tasks... done
root@7dbd6be9cf03:/
步骤 2:
root@7dbd6be9cf03:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 10.00.0 28241020 ? Ss 10:25 0:00 tail -f /dev/null
root 70.00.1 46283844 pts/0 Ss 10:25 0:00 /bin/bash
root 751.40.0 0 0 pts/0 Z 10:25 0:00 <defunct>
root 770.00.0 0 0 pts/0 Z 10:25 0:00 <defunct>
root 860.50.0 0 0 ? Zs 10:25 0:00 <defunct>
root 870.11.1 129572 39996 ? S 10:25 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Panel
root 1270.00.0 0 0 ? Zs 10:25 0:00 <defunct>
root 1280.10.5 1002060 18832 ? Sl 10:25 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Task
root 1460.70.0 0 0 ? Z 10:25 0:00 <defunct>
root 1511.90.0 0 0 ? Z 10:25 0:00 <defunct>
root 1542.00.0 0 0 ? Z 10:25 0:00 <defunct>
root 1700.00.0 70641584 pts/0 R+ 10:26 0:00 ps aux
就执行了这个操作,然后就开始无限增加pids 这应该是个重大 BUG,我试过8.0.0. 8.0.5 7.9.10版本都不行,你们应该兼容docker环境的。 过一分钟后,python3相关的进程的 pids 开始增加,并且是僵死进程,且占用 cpu
root@7dbd6be9cf03:/# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 10.00.0 28241020 ? Ss 10:25 0:00 tail -f /dev/null
root 70.00.1 46283844 pts/0 Ss 10:25 0:00 /bin/bash
root 750.10.0 0 0 pts/0 Z 10:25 0:00 <defunct>
root 770.00.0 0 0 pts/0 Z 10:25 0:00 <defunct>
root 860.00.0 0 0 ? Zs 10:25 0:00 <defunct>
root 870.01.1 129572 40028 ? S 10:25 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Panel
root 1270.00.0 0 0 ? Zs 10:25 0:00 <defunct>
root 1280.00.5 1075792 19096 ? Sl 10:25 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Task
root 1460.00.0 0 0 ? Z 10:25 0:00 <defunct>
root 1510.10.0 0 0 ? Z 10:25 0:00 <defunct>
root 1540.10.0 0 0 ? Z 10:25 0:00 <defunct>
root 1720.10.0 0 0 ? Z 10:26 0:00 <defunct>
root 1740.30.0 0 0 ? Z 10:26 0:00 <defunct>
root 1760.20.0 0 0 ? Z 10:27 0:00 <defunct>
root 1780.10.0 0 0 ? Z 10:27 0:00 <defunct>
root 1801.30.0 0 0 ? Z 10:27 0:00 <defunct>
root 1820.00.0 70641556 pts/0 R+ 10:28 0:00 ps aux docker 中宝塔面板配置好网站后,单独运行我的网站,不开启宝塔面板就没有这个问题。 宿主机环境没有这个问题 happySir1 发表于 2024-7-2 10:34
宿主机环境没有这个问题
您在您docker中执行以下
您到服务器SSH终端中执行下面命令(非面板终端)修复面板
删除之前无法使用的面板环境
mv/www/server/panel/pyenv /www/backup/pyenv_backup
重新获取新的面板环境和更新包
curl http://download.bt.cn/install/update_panel.sh|bash 运维技术阿闯 发表于 2024-7-2 10:55
您在您docker中执行以下
按照此命令更新后,依然未解决问题,只运行了bt 3命令
root@Cloud:~/work/production_env# docker exec -it hiswi-cloud /bin/bash
root@bc13dbba782d:/# ps aux| grep python
root 750.20.0 0 0 ? Z 15:38 0:00 <defunct>
root 870.01.1 129540 40084 ? S 15:38 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Panel
root 1930.00.5 1075764 19180 ? Rl 15:38 0:00 /www/server/panel/pyenv/bin/python3 /www/server/panel/BT-Task
root 2370.00.0 0 0 ? Z 15:38 0:00 <defunct>
root 2440.00.0 0 0 ? Z 15:38 0:00 <defunct>
root 2460.10.0 0 0 ? Z 15:38 0:00 <defunct>
root 2480.10.0 0 0 ? Z 15:38 0:00 <defunct>
root 2520.60.0 0 0 ? Z 15:38 0:01 <defunct>
root 3180.10.0 0 0 ? Z 15:39 0:00 <defunct>
root 3200.40.0 0 0 ? Z 15:39 0:00 <defunct>
root 3360.30.0 0 0 ? Z 15:40 0:00 <defunct>
root 3380.10.0 0 0 ? Z 15:40 0:00 <defunct>
root 3400.90.0 0 0 ? Z 15:40 0:00 <defunct>
root 3550.00.0 34721604 pts/1 S+ 15:40 0:00 grep --color=auto python
root@bc13dbba782d:/# ps aux| grep python | wc -l
14
root@bc13dbba782d:/# ps aux| grep python3 | wc -l
16
root@bc13dbba782d:/# ps aux| grep python3 | wc -l
16
root@bc13dbba782d:/# ps aux| grep python3 | wc -l
16
root@bc13dbba782d:/# ps aux| grep python3 | wc -l
19
root@bc13dbba782d:/# happySir1 发表于 2024-7-6 15:43
按照此命令更新后,依然未解决问题,只运行了bt 3命令
root@Cloud:~/work/production_env# docker exec - ...
您好,您这个应该就是进程结束,父进程没有收回,导致的僵尸进程
https://blog.csdn.net/weixin_70208651/article/details/136632878#
参考这个解决 运维技术阿闯 发表于 2024-7-6 16:19
您好,您这个应该就是进程结束,父进程没有收回,导致的僵尸进程
https://blog.csdn.net/weixin_70208651 ...
不是回收不回收的问题,是它一直在创建进程啊,你美看到他的pid的个数一直在增加吗,杀不完,根本杀不完,docker是一种很常见的成熟部署方式,希望你们能够解决。 happySir1 发表于 2024-8-3 01:12
不是回收不回收的问题,是它一直在创建进程啊,你美看到他的pid的个数一直在增加吗,杀不完,根本杀不完 ...
您好,临时关闭docker,然后将面板升级到最新版本后,执行bt 16修复一下,然后您看您的问题是否解决 运维技术阿闯 发表于 2024-8-12 09:53
您好,临时关闭docker,然后将面板升级到最新版本后,执行bt 16修复一下,然后您看您的问题是否解决 ...
您好:
根据您提供的方法,更新到 9.10 版本后,运行半个小时,没有重复创建 python3进程,问题得到解决。
效果如下:
root@bc13dbba782d:/www# ps aux | grep python3 | wc -l
1
root@bc13dbba782d:/www#
PS:更正您的“临时关闭docker,然后将面板升级到最新版本后”,bt 本身跑在docker里的,所以不用临时关闭 docker,不然无法更新。
在此非常感谢宝塔官方团队的技术支持,后续会继续为官方提供准确的 bug 描述。 happySir1 发表于 2024-8-16 11:39
您好:
根据您提供的方法,更新到 9.10 版本后,运行半个小时,没有重复创建 python3进程,问题得 ...
好的,问题解决了就好,这边后续也会持续观察一下的,您有新的问题可以在开新贴呢,这边就闭贴了,祝您生活愉快
页:
[1]