我正在尝试构建此 dockerfile 然后运行它,但出现此错误docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "./deployment-service": permission denied: unknown.
这是我的 docker 文件,我已经创建了卷和网络
FROM golang:1.19.2-alpine as builder
RUN apk add bash
RUN apk add --no-cache openssh-client ansible git
RUN mkdir /workspace
WORKDIR /workspace
COPY go.mod ./
COPY go.sum ./
RUN go mod download
COPY . ./
RUN go build -o deployment-service cmd/deployment-service/main.go
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
COPY --from=builder /workspace .
ARG DEFAULT_PORT=8080
ENV PORT $DEFAULT_PORT
EXPOSE $PORT
CMD ["./deployment-service"]
Run Code Online (Sandbox Code Playgroud)
这是我的运行命令,
docker run --name=${CONTAINER_NAME} -d --rm -p ${PORT}:80 -e DEPLOYMENT_SERVICE_DATABASE_CONNECTION_URI=mongodb://${MONGO_USERNAME}:${MONGO_PASSWORD}@${MONGO_CONTAINER_NAME}:27017/ -e DEPLOYMENT_SERVICE_SERVER_SECRET_KEY=${SECRET_KEY} -e ANSIBLE_CONFIG='./jam-ansible/ansible.cfg' -e DEPLOYMENT_SERVICE_ANSIBLE_SUBMISSION_ROOT=${DEPLOYMENT_ROOT} -v ${DEPLOYMENT_VOLUME}:${DEPLOYMENT_ROOT} --network=${NETWORK_NAME} server:latest
Run Code Online (Sandbox Code Playgroud)
帮助解决我的问题。
小智 10
似乎缺乏执行部署服务的权限。你可以加
RUN chmod +x deployment-service
Run Code Online (Sandbox Code Playgroud)
前CMD ["./deployment-service"]
小智 2
看起来您需要编辑部署服务文件的权限。
尝试跑步
chmod a+x ./deployment-service
Run Code Online (Sandbox Code Playgroud)
在终端然后重试。
| 归档时间: |
|
| 查看次数: |
116166 次 |
| 最近记录: |