docker 中的 Yarn 命令-compose 找不到 && 命令

Yarn command in docker-compose can't find && command

我正在我的一个 vue 项目中使用 docker。我想 运行 命令 yarn --silentyarn serve 在我的 docker 文件中背靠背,但它没有将 yarn --silent 视为命令。有什么办法可以解决这个问题?

代码如下所示:

version: "3"

services:
  proxy:
    build: 
      context: ./api
      dockerfile: Dockerfile
    command: yarn start
    volumes:
      - .:/usr/app/
      - /usr/app/node_modules
    container_name: proxy
    ports:
      - "3000:3000"
  app:
    build:
      context: ./app
      dockerfile: Dockerfile
    command: yarn --silent && yarn serve
    ports:
      - "8080:8080"
    container_name: app
    volumes:
       - ./app:/usr/src/app
       - /usr/src/app/node_modules

编辑

当我将命令更改为 yarn install --silent && yarn serve 时,出现以下错误: error 'install' has been replaced with 'add' to add new dependencies. Run "yarn add && yarn serve" instead. 但这不会安装所有依赖项当然

您还没有分享您的 Dockerfile,但我假设 您已经 yarn 在 docker 容器中安装了,是吗?

如果是这样,请尝试用以下命令替换您的命令:

command: bash -c "yarn --silent && yarn serve"

注意:我假设您的容器中有 bash,如果没有,请将其替换为支持的容器 - sh,等等