无法执行包含来自php文件的docker命令的bash脚本

时间:2018-10-27 07:11:25

标签: php shell docker

我正在运行以下php脚本。它创建一个脚本文件,该文件运行几个docker命令。但是由于某种原因,此脚本文件未运行docker命令。它确实运行普通的脚本文件命令,例如ls,pwd,echoetc。

$code = $_POST['source']; 
$myfile = fopen("abc.py", "w");
fwrite($myfile, $code);
$myfile_new = fopen("execu_ta.sh", "w");
$txt = "#!/bin/bash\n\n";
fwrite($myfile_new, $txt);
$txt1 = "docker build -t python-new-world .";  
$txt2 = "docker run python-new-world\n";
fwrite($myfile_new, $txt1);
fwrite($myfile_new, $txt2);
$result=shell_exec('path of the "execu_ta.sh" file');
echo $result;

?>

这可能是什么问题?

2 个答案:

答案 0 :(得分:0)

您需要设置可执行位chmod("your script filename", 0755);或使用shell_exec('/bin/bash your_script')

答案 1 :(得分:0)

除了Ujin的回答,我也会刷新并关闭文件,否则您可能最终执行了空脚本。确保docker在您的PATH上。