我正在尝试将参数传递给docker-compose运行的基础命令,但是我不确定该怎么做。
这是我的非docker命令的样子:
npm run test:watch -- --verbose --match="matching test name"
它将
--verbose --match="matching test name"
传递给测试运行程序。现在,我想在docker中运行测试,但是无法正常工作:
docker-compose run test-service-name -- --verbose --match="matching test name"
这可能吗,或者我应该怎么做?
最佳答案
docker-compose run
将-- --verbose --match="matching test name"
解释为命令和参数
Usage:
run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] [-l KEY=VALUE...]
SERVICE [COMMAND] [ARGS...]
您应该将命令和所有参数放在cli中
docker-compose run test-service-name npm run test:watch --verbose --match="matching test name"
docker-compose用于简化而不是使事情复杂化,为此,您可以使用以下命令在
docker-compose.yml
文件中永久定义它:command: npm run test:watch --verbose --match="matching test name"
来源:https://docs.docker.com/compose/compose-file/#command
关于bash - 如何将命令行参数传递给docker-compose run?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55077578/