我在docker image中运行测试,我需要传递自定义参数 每时每刻。
当我在图像名称之后放置参数时,docker认为参数是图像名称。
docker run -t -i image-name -s test.py
docker run -t -i image-name -- -s test.py
错误:
Failed no image test_arena2.py
Docker版本1.11.2,构建b9f10c9
答案 0 :(得分:5)
您可以使用ENTRYPOINT
和CMD
指令的组合构建Dockerfile,这将允许您run containers with or without arguments,例如:
FROM ubuntu
ENTRYPOINT ["/bin/echo"]
CMD ["hello"]
这表示入口点是echo
命令,默认参数是hello
。运行不带参数的容器:
> docker run temp
hello
使用参数运行并将它们全部传递给entrypoint命令:
> docker run temp -s stackoverflow
-s stackoverflow
答案 1 :(得分:0)
// get the current date/time in a specific timezone
ZonedDateTime.now(ZoneId.of("Europe/Paris"));
很适合作为命令行的开头,然后docker run -i
只有在提供图像名称的最后set of arguments for the run command
答案 2 :(得分:-1)
图像名称应始终位于docker run命令的末尾,即作为命令的最后一个参数。你可以使用下面的命令
将值作为环境变量传递docker run -e "ENV_VAR_NAME=VALUE" -it image_name