我试图用docker发出一个jenkins shell命令,如下所示:
docker run -v $ {env.param1}:/ workspace --privileged = true app sh -c' python app.py --option $ {env.param1}'
......结果如下:
docker run -v actual.param1:/ workspace --privileged = true app sh -c' cd folder&& python app.py --option $ {env.param2}'
第一个环境参数$ {env.param1}已成功替换为实际参数,但第二个$ {env.param2}未成功替换。在我看来,因为第二个$ {env.param2}在单引号内,jenkins没有替换参数。
感谢您阅读,我将非常感谢您的帮助!!
答案 0 :(得分:0)
docker run -v $ {env.param1}:/ workspace --privileged = true app sh -c'python app.py --option $ {env.param1}'
您正在${env.param1}
内传递'
(单引号),因此它没有被删除,请将命令更改为使用双引号:
docker run -v $ {env.param1}:/ workspace --privileged = true app sh -c“python app.py --option $ {env.param1}”