Maison > Article > développement back-end > Erreur Docker : « échec de la création de la tâche de calage : échec de la création de l'exécution OCI : échec de la création runc : impossible de démarrer le processus du conteneur » - Comment puis-je corriger l'erreur « autorisation refusée » ?
Erreur Docker : échec de la création d'une tâche de calage
Lorsque vous essayez d'exécuter une image Docker, les utilisateurs peuvent rencontrer le message d'erreur "docker : Erreur réponse du démon : échec de la création de la tâche de calage : échec de la création du runtime OCI : échec de la création du runc : impossible de démarrer le processus du conteneur. Cette erreur indique que Docker rencontre des problèmes lors du démarrage du processus de conteneur en raison de problèmes d'autorisation ou de configuration.
Résolution des refus d'autorisation
Dans le cas spécifique décrit dans la question, le message d'erreur « exec : ./deployment-service : autorisation refusée : inconnue » suggère que l'exécutable du service de déploiement ne dispose pas d'autorisations d'exécution dans le conteneur. Pour résoudre ce problème, ajoutez l'instruction suivante au Dockerfile avant la commande CMD :
RUN chmod +x deployment-service
Cette ligne accordera les autorisations d'exécution au fichier de service de déploiement.
Avec l'autorisation appropriée dans place, le docker devrait être en mesure de démarrer le processus de conteneur avec succès. Voici un Dockerfile mis à jour avec la ligne RUN ajoutée :
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"]
Une fois le Dockerfile mis à jour appliqué, la commande docker run doit s'exécuter sans l'erreur d'autorisation refusée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!