OCI 运行时创建失败的 container_linux.go:370

时间:2021-01-24 23:26:32

标签: docker

我搜索了这个错误,但在线程上给出的解决方案不起作用 Cannot start any docker container with "oci runtime error"

所以我使用的是 MacOS,并且多次升级并重新启动了 docker 服务。

这是我的 Dockerfile

FROM openjdk:alpine
RUN apk add --no-cache wget su-exec bash
RUN wget -qO- https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/7.3.2/flyway-commandline-7.3.2-linux-x64.tar.gz | tar xvz && su-exec sh ln -s `pwd`/flyway-7.3.2/flyway /usr/local/bin
RUN ln -sf /usr/bin/java /flyway-7.3.2/jre/bin
RUN mv /flyway-7.3.2/conf/flyway.conf /flyway-7.3.2/conf/flyway.conf.orig
COPY ./flyway.conf /flyway-7.3.2/conf/flyway.conf
CMD [ "/flyway-7.3.2/flyway migrate" ]

这是我在 docker-compose.yml

的服务
  flyway:
    build: flyway
    container_name: flyway
    volumes:
      - ./flyway/migrations:/migrations
    links:
      - db
    depends_on:
        db:
          condition: service_healthy

但是当我说 docker-compose up 时,几乎所有容器都会出错

Creating flyway ... error
ERROR: for flyway  Cannot start service flyway: OCI runtime create failed: container_linux.go:370: starting container process caused: exec: "/flyway-7.3.2/flyway migrate": stat /flyway-7.3.2/flyway migrate: no such file or directory: unknown

1 个答案:

答案 0 :(得分:1)

OCI 消息只是 Alpine 报告错误的方式的一部分。但您的实际错误在 CMD 行中。

您的语法不正确。要么删除 [],要么添加@jakub 指出的逗号。

https://docs.docker.com/engine/reference/builder/#cmd