使用dockerfile部署Golang程序报错

问题遇到的现象和发生背景

背景:
HelloWorldMain是我一个简单测试程序,已经是编译好的golang程序

img

问题:
Dockerfile写完了之后正传 docker build -t 没有问题,也生成了相对应的镜像
如下图

img

在执行:

docker run --name lhq_ms01 --privileged=true  -v /app/microService:/data/app -p 8090:8090 -d lhq_golang_docker:1.6

时候,提示报错信息:docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "./HelloWorldMain": stat ./HelloWorldMain: no such file or directory: unknown.
如下图

img

用代码块功能插入代码,请勿粘贴截图

Dockerfile文件内容:

# 依赖于mini-docker
FROM docker.io/alpine:latest

# [2] 创建目录
RUN mkdir -p "/data/app" \
&& ln -sf /dev/stdout /data/app/service.log

# [3] 定义代码路径
WORKDIR /data/app

# [3] 复制可执行文件
COPY HelloWorldMain /data/app

# 服务器端口
EXPOSE 8090

# 启动容器时运行的命令
CMD ["./HelloWorldMain"]

运行结果及报错内容

执行docker run的时候就报错了

img

如果不加上

--privileged=true  -v /app/microService:/data/app


``` 这段内容的时候,是可以正常创建启动容器的
想知道为什么会这样,谢谢各位能够助我,感谢!

试试在run的时候在命令末尾加 /bin/bash /data/app/HelloWorldMain