2016-03-03 33 views
5

運行我有一個名爲perf_alarm_checker.py Python文件,這條巨蟒文件需要兩個命令行參數:python perf_alarm_checker.py -t something -d something的Dockerfile看起來是這樣的:如何命令行參數傳遞給python腳本在泊塢窗

# Base image 
FROM some base image 

ADD perf_alarm_checker.py /perf-test/ 

CMD python perf_alarm_checker.py 

如何傳遞兩個命令行參數-t-ddocker run?我試過docker run -w /perf-test alarm-checker -t something -d something但不起作用。

回答

4

您不能按照您的意願使用-t-d,因爲那些是docker run的選項。

  • -t啓動終端。
  • -d啓動Docker容器作爲守護進程。

要在您的Dockerfile中設置環境變量,請使用ENV命令。

ENV <key>=<value> 

查看Dockerfile reference

另一種選擇是通過docker run通過環境變量:

docker run ... -e "key=value" ... 

docker run reference

這些環境變量可以從CMD訪問。

CMD python perf_alarm_checker.py -t $ENV1 -d $ENV2 
5

使用ENTRYPOINT而不是CMD,然後你可以在docker run中使用命令行選項,就像你的例子。

ENTRYPOINT ["python", "perf_alarm_checker.py"]

相關問題