Docker エラー: Shim タスクの作成に失敗しました
Docker イメージを実行しようとすると、「docker: Error」というエラー メッセージが表示される場合があります。デーモンからの応答: シムタスクの作成に失敗しました: OCI ランタイム作成に失敗しました: runc 作成に失敗しました: コンテナプロセスを開始できません。」このエラーは、権限または構成の問題により、Docker がコンテナ プロセスの開始時に問題が発生していることを示しています。
権限の拒否への対処
質問で説明されている特定のケースでは、エラー メッセージ「exec: ./deployment-service: 許可が拒否されました: 不明」は、deployment-service 実行可能ファイルにコンテナー内の実行許可が不足していることを示しています。この問題を解決するには、CMD コマンドの前に、Dockerfile に folgenden 命令を追加します。
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 エラー: 「シム タスクの作成に失敗しました: OCI ランタイムの作成に失敗しました: runc create に失敗しました: コンテナ プロセスを開始できません」 - 「権限が拒否されました」エラーを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。