Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
384 views
in Technique[技术] by (71.8m points)

How to solve this problem "permission denied”, when I start `docker compose up`?

When I just run docker build, I don't have any problems.

But, when I start with docker-compose up :

Cannot start service server: OCI runtime create failed: container_linux.go:370: starting container process caused: exec: permission denied: unknown

Dockerfile

...

ENV CGO_ENABLED=0
ENV GO111MODULE=on
ENV GOFLAGS=-mod=vendor

RUN dep ensure

RUN go mod vendor
RUN go mod download
RUN go mod verify

EXPOSE 8080

ENTRYPOINT  ["/go/src/github.com/project/module"]

docker-compose.yaml

 ...
  server:
    build:
      context: .
      dockerfile: service.dockerfile
    platform: linux
    ports:
      - 8080:8080

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

About docker permissions

Proper solution

  1. You need to have all reqiured permissions for volumes
  2. Add your user to docker group. More info here: https://docs.docker.com/engine/install/linux-postinstall/

Fast and bad solution

Run docker-compose with sudo or as a root: sudo docker-compose -f ... up


The OCI error:

But your problem is not with permisisons, it is with a non-existing program:

ENTRYPOINT  ["/go/src/github.com/project/module"]

Is /go/src/github.com/project/module program executable binary with permissions to execute it?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...