最近在搞java安全那块,然后vulhub上面又很多靶场,例如weblogic和structs2等都是打包好的镜像
但每次启动靶场时总是启动失败,原因如下
用 docker-compose up -d 启动靶场 docker ps 查看运行的靶场,一般失败是没有任何显示的
然后检查日志 docker-compose logs
发现
一堆的too many errors 给你看呆了的那种
最后一句话是重点,就是out of memory
提示就是说明库初始化失败-无法分配文件描述符表-内存不足,导致docker服务启动失败
解决方案:
在 /etc/systemd/system/ 或者 /usr/lib/systemd/system/
找到 docker.service 文件,在 ExecStart=/usr/bin/dockerd 后面添加 --default-ulimit nofile=65536:65536 参数
我自己是用的/usr/lib/systemd/system/docker.service
然后重启docker
-
systemctl daemon-reload
-
systemctl restart docker
然后我们再到weblogic的目录下面启动容器并用docker ps 查看是否启动成功
预期结果当然是ok的啦!
大功告成,然后就愉快开始漏洞复现吧!