如何使用Makefile正确运行docker

时间:2017-12-14 23:10:26

标签: linux unix docker makefile

我有一个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.

如何解决此错误

1 个答案:

答案 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)

相关问题