簡體   English   中英

Docker-compose失敗,錯誤為“未指定命令”

[英]Docker-compose fails with error “No command specified”

使用run命令啟動容器

docker run -it -d -p 8888:8888 install_advisor node src/server

如預期般運作。 但是嘗試使用docker-compose來啟動它會導致錯誤:

“錯誤:用於顧問程序,無法為服務顧問程序創建容器:未指定命令”

我究竟做錯了什么?

docker-compose.yml的內容

advisor:
  build:
    context: .
    dockerfile: DockerfileAdvisor
  ports:
    - "8888:8888"
  restart: always
  privileged: true

DockerfileAdvisor的內容

FROM XYZ
ENTRYPOINT [ "node", "src/server" ]

我對您的解決方案無法正常工作感到有些驚訝。 但是您可能可以通過幾種方式對其進行修復。 這里有一些建議:

1)將DockerFileAdvisor文件更改為

FROM XYZ
COMMAND [ "node", "src/server" ]

2)如果DockerFileAdvisor實際上僅包含問題中顯示的兩行,那么您甚至不需要它。 只需在docker-compose.yml指定image: XYZcommand: [ "node", "src/server" ]

advisor:
    image: XYZ
    ports:
      - "8888:8888"
    restart: always
    privileged: true
    command: [ "node", "src/server" ]

也許您想看看Docker文檔,了解ENTRYPOINTCOMMAND指令如何一起使用。 簡而言之,使用ENTRYPOINT您可以使圖像看起來像可執行文件,並使用COMMAND為其傳遞參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM