【发布时间】:2020-10-19 06:35:42
【问题描述】:
这不是重复的,因为虽然错误相同,但我的用例与其他用例不同。
我正在编译一个 go 应用程序以使用 docker on 进行部署:
- 最新的arch linux
- 最新的 docker 版本,golang:alpine 镜像
- 尝试使用 go 版本 1.13.3 和 1.14.4 linux amd64
- 我没有 bash 脚本或错误的文件结尾。整个项目都是在这台 Linux 机器上编写的
- 我可以部署一个只有 fmt 打印且没有任何错误的空 go 应用程序
然而,
当我在我的 OSX 机器上构建它并将其发送到 linux 时,我可以将该可执行文件部署到 docker 而不会出现任何错误
- OSX 莫哈韦
- 最新的码头工人
- 转到 1.13.3
- GOOS=linux
错误:
standard_init_linux.go:211: exec user process caused "no such file or directory"
【问题讨论】:
-
共享 Dockerfile,docker-compose.yml
-
我们会先验证这个文件是否存在于容器内,
docker run -it <image_name> bash,检查这个文件是否存在于指定位置,用ls -l检查它的文件权限,是不是可执行?然后尝试在容器内调用此命令。 -
我可以正常执行没有任何错误,已更新
-
docker run -it <image_name> /bin/sh怎么样?