fixed display bugs and added tabs for logs and dump
This commit is contained in:
		@@ -4,9 +4,18 @@ if (!preg_match(',^[a-f0-9]+$,', $container)) exit(1);
 | 
			
		||||
exec('docker inspect '.$container, $res, $ret);
 | 
			
		||||
if ($ret!=0) exit(1);
 | 
			
		||||
$containers=json_decode(join($res), true);
 | 
			
		||||
echo "<table class=\"details docker\"><thead>\n";
 | 
			
		||||
echo "<tr><th>Name</th><th>Ports</th><th>Volumes</th><th>Links</th><th>Environments</th><th>Image</th><th>Command</th></tr>\n";
 | 
			
		||||
echo "</thead><tbody>";
 | 
			
		||||
?>
 | 
			
		||||
<div id="tabs">
 | 
			
		||||
   <ul>
 | 
			
		||||
       <li><a href="#tabs-1">Overview</a></li>
 | 
			
		||||
       <li><a href="#tabs-2">Logs</a></li>
 | 
			
		||||
       <li><a href="#tabs-3">Dump</a></li>
 | 
			
		||||
   </ul>
 | 
			
		||||
   <div id="tabs-1">
 | 
			
		||||
       <table class="details docker"><thead>
 | 
			
		||||
         <tr><th>Name</th><th>Ports</th><th>Volumes</th><th>Links</th><th>Environments</th><th>Image</th><th>Command</th></tr>
 | 
			
		||||
       </thead><tbody>
 | 
			
		||||
<?php
 | 
			
		||||
foreach ($containers as $c) {
 | 
			
		||||
  $name = preg_replace(',^/,', '', $c['Name']);
 | 
			
		||||
  $ports = "<ul>";
 | 
			
		||||
@@ -32,14 +41,23 @@ foreach ($containers as $c) {
 | 
			
		||||
        $envs.="<li>-e ".$env."</li>";
 | 
			
		||||
  $envs .= "</ul>";
 | 
			
		||||
  $image = $c['Config']['Image'];
 | 
			
		||||
  $command = "";
 | 
			
		||||
  if ($c['Config']['Cmd']) $command = join(" ", $c['Config']['Cmd']);
 | 
			
		||||
  $status="dead";
 | 
			
		||||
  if ($c['State']['Dead']) $status = "dead";
 | 
			
		||||
  elseif ($c['State']['Restarting']) $status = "restarted";
 | 
			
		||||
  elseif ($c['State']['Paused']) $status = "paused";
 | 
			
		||||
  elseif ($c['State']['Running']) $status = "running";
 | 
			
		||||
  echo "<tr class=\"${status}\"><td>docker run -d --name ${name}</td><td>${ports}</td><td>${volumes}</td><td>${links}</td><td>${envs}</td><td>${image}</td><td>${command}</th></tr>\n";
 | 
			
		||||
  echo '<tr class="'.$status.'"><td><a href="javascript:details('."'".$c['Id']."'",')">'.$name.'</a></td><td>'.$ports.'</td><td>'.$volumes.'</td><td>'.$links.'</td><td>'.$envs.'</td><td>'.$image.'</td><td>'.$command.'</td></tr>'."\n";
 | 
			
		||||
}
 | 
			
		||||
echo "</tbody></table>";
 | 
			
		||||
echo "<pre>\n".join("\n", $res)."\n</pre>"
 | 
			
		||||
echo'</div><div id="tabs-2">';
 | 
			
		||||
exec('docker logs '.$container, $logs, $ret);
 | 
			
		||||
echo "<pre>\n".join("\n", $logs)."\n</pre>";
 | 
			
		||||
echo'</div><div id="tabs-3">';
 | 
			
		||||
echo "<pre>\n".join("\n", $res)."\n</pre>";
 | 
			
		||||
echo'</div></div>';
 | 
			
		||||
?>
 | 
			
		||||
<script>
 | 
			
		||||
    $(function() {$("#tabs").tabs();});
 | 
			
		||||
</script>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user