我有一个make文件:
APP_NAME=sgy-core-bdd/codeception
build: ## Build the container
docker build -t $(APP_NAME) .
run:
docker run --entrypoint /bin/bash -i -t -v $(pwd):/app $(APP_NAME)
当我make run
时,我收到此错误
make: *** No rule to make target `/app', needed by `run'. Stop.
如何解决此错误
答案 0 :(得分:0)
配方行必须使用真实的TAB字符缩进。在您的示例中,可能该行未使用TAB缩进。
这意味着这一行:
docker run --entrypoint /bin/bash -i -t -v $(pwd):/app $(APP_NAME)
被视为制定规则,而不是配方,这相当于写作:
docker: /app $(APP_NAME)
run: /app $(APP_NAME)
--entrypoint: /app $(APP_NAME)
/bin/bash: /app $(APP_NAME)
-i: /app $(APP_NAME)
-t: /app $(APP_NAME)
-v: /app $(APP_NAME)
$(pwd): /app $(APP_NAME)
因此,当您使用make run
时,它希望构建先决条件/app
和$(APP_NAME)
。