docker service 卡在 prepering 状态
执行了 docker service create 命令之后, service 一直卡在 prepering 状态
$ docker service create --replicas 2 -p 80:80 --name nginx nginx:1.19.5-alpineqgra9dthf4efu7o9xqpvfkqfwoverall progress: 1 out of 2 tasks1/2: running [==================================================>]2/2: preparing [=================================> ]
使用 docker service ps 查看 service 运行状态,跟 docker service create 一样的,有一个服务一直是 prepering 状态
$ docker service ps nginxID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTSsdnkq64hfz5k nginx.1 nginx:1.19.5-alpine localhost.localdomain Running Running 10 hours agowdx0475co4hw nginx.2 nginx:1.19.5-alpine localhost.localdomain Running Preparing 10 hours ago
查找资料发现处于 prepering 状态的服务有可能是 worker 节点镜像没下载完的问题。因为我本地没配置镜像加速,所以有可能是外网导致镜像下载不了,配置一下 docker 镜像后问题就解决了
docker 镜像加速教程:https://www.runoob.com/docker/docker-mirror-acceleration.html
容器无故退出
问题:最近经常发现有些容器无缘无故自动退出了,不同容器都出现这种情况,使用docker container ps -a查看,发现 Exited(137)
查找资料发现 Exit(137) 可能是 docker 内存不足,导致容器被 docker kill
解决方案:加大 docker 内存,由原本的 2G 调到 8G
