docker compose run - 在 $PATH 中找不到可执行文件:未知

问题描述 投票:0回答:1
---
name: gateaway
version: "3.9"

services:
  # Here we have other services, just removed for clearance
  gateway:
    image: images.gcsd.io/gateway:0.1.5
    volumes:
      - ./gateway:/var/gateway:ro

当我运行命令时收到错误

docker compose run --rm gateway --log info import -f /var/gateway/data/languages.json languages

来自守护进程的错误响应:无法为容器创建任务:无法创建 shim 任务:OCI 运行时创建失败:runc 创建失败:无法启动容器进程:exec:“--log”:在 $PATH 中找不到可执行文件:未知

gateway 是写在 compose 文件中的服务名称。 正如文档中所写,在服务名称(网关)之后,我们可以为入口点编写参数。

“入口点”:[ “/usr/bin/网关” ],

/usr/bin/gateway 是二进制的。

我必须将 docker 版本更改为其他版本吗? 有什么问题吗?

尝试使用 docker 命令运行此映像

docker run -it --name test -v ./gateway:/var/gateway:ro  images.gcsd.io/rgs/gateway:0.1.5 --log info import -f /var/gateway/data/languages.json languages

此命令按预期工作。 现在 --log 被视为网关二进制文件的参数。

docker docker-compose containers
1个回答
0
投票

您必须提供要执行的命令。

docker compose COMMAND OPTIONS SERVICE COMMAND ARGS....

是:

docker compose run --rm gateway gateway --log ....
                                        ^^^^^^^^^^ - command options
                                ^^^^^^^            - command
                        ^^^^^^^                    - service
                   ^^^^                            - docker compose run options
               ^^^                                 - docker compose command
© www.soinside.com 2019 - 2024. All rights reserved.