使用docker scratch 构建 golang 之坑

参考:https://hub.docker.com/_/scratch?tab=description

参考:https://segmentfault.com/a/1190000000628247

参考:https://www.cnblogs.com/uscWIFI/p/11917662.html

 

scratch是一个空镜像,意味Docker内部不存在任何环境和依赖库.所以当我们构建出go 程序后,docker run 时 会报错,

docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused "exec: \"/bin/sh\": stat /bin/sh: no such file or directory": unknown.

建议还是直接使用alpine 作为基础镜像构建。

 

或者有可能是你的dockerfile 最后的 CMD 或 ENTRYPOINT 写错了,我就是

# 正确✔️
CMD ["./xxx]
ENTRYPOINT ["./xxx"]

# 错误❌
CMD = ["./xxx]
ENTRYPOINT = ["./xxx"]

 

你可能感兴趣的:(使用docker scratch 构建 golang 之坑)