>백엔드 개발 >Golang >Docker 오류: 'shim 작업 생성 실패: OCI 런타임 생성 실패: runc 생성 실패: 컨테이너 프로세스를 시작할 수 없습니다.' - '권한 거부됨' 오류를 어떻게 수정합니까?

Docker 오류: 'shim 작업 생성 실패: OCI 런타임 생성 실패: runc 생성 실패: 컨테이너 프로세스를 시작할 수 없습니다.' - '권한 거부됨' 오류를 어떻게 수정합니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-10 09:41:03880검색

Docker Error:

Docker 오류: Shim 작업 생성 실패

Docker 이미지를 실행하려고 하면 "docker: 오류"라는 오류 메시지가 나타날 수 있습니다. 데몬의 응답: shim 작업 생성 실패: OCI 런타임 생성 실패: runc 생성 실패: 컨테이너 프로세스를 시작할 수 없습니다." 이 오류는 권한 또는 구성 문제로 인해 Docker가 컨테이너 프로세스를 시작하는 데 문제가 있음을 나타냅니다.

권한 거부 해결

질문에 설명된 특정 사례에서, "exec: ./deployment-service: 허가 거부됨: 알 수 없음" 오류 메시지는 배포 서비스 실행 파일에 컨테이너 내 실행 권한이 부족함을 나타냅니다. 이 문제를 해결하려면 CMD 명령 앞에 folgenden 명령어를 Dockerfile에 추가하세요.

RUN chmod +x deployment-service

이 줄은 배포 서비스 파일에 실행 권한을 부여합니다.

적절한 권한이 있는 경우 그러면 Docker가 컨테이너 프로세스를 성공적으로 시작할 수 있어야 합니다. 다음은 RUN 라인이 추가된 업데이트된 Dockerfile입니다.

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

RUN chmod +x deployment-service

CMD ["./deployment-service"]

업데이트된 Dockerfile이 적용되면 docker run 명령은 권한 거부 오류 없이 실행되어야 합니다.

위 내용은 Docker 오류: 'shim 작업 생성 실패: OCI 런타임 생성 실패: runc 생성 실패: 컨테이너 프로세스를 시작할 수 없습니다.' - '권한 거부됨' 오류를 어떻게 수정합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.