我有一个意外停止的docker容器。
我的泊坞窗图片的重要部分如下所示:
var list = [2,3]
var limitation = 10000
var flag = true
var tmp = 0
var max = 0
for(var count = 6 ; count <= limitation ; count += 6) {
for(var d = -1; d <= 1; d += 2) {
max = Int(floor(sqrt(Double(count + d))))
for(flag = true, tmp = 0; flag && list[tmp] <= max; tmp++) {
if((count + d) % list[tmp] == 0) {
flag = false
}
}
if(flag) {
list.append(count + d)
}
}
}
print(list)
它在构建之前执行。比我用...
ENTRYPOINT ["./start.sh"]
CMD ["nginx", "-g", "daemon off;"]
我在执行docker run -p 80:8080 myimage:latest
docker ps
但几秒钟后容器停止(而不是继续运行nginx)
"./start.sh nginx -g "
显示我docker logs
输出的日志
该.sh中的最后一个命令是“精细”的回声,我看到了。
我想要获得的是容器执行entrypointscript,然后执行nginx服务器。
答案 0 :(得分:1)
使用ENTRYPOINT和CMD不会连续运行它们。 CMD参数附加到入口点。您的docker ps完全显示了这一点。 This是一个不错的解释。
你需要让你的start.sh处理你的CMD参数,或让你的start.sh调用nginx,或者将它们全部重做。