在使用JSCH的docker环境中的容器内部连接

我正在开发一个Java应用程序连接(使用SSH)的Linux机器附加docker容器,并发送命令。

现在,我可以连接linux机器,发送命令并读取响应,但是当我尝试附加一个容器并在其中发送命令时,什么也收不到,我也无法发送命令。

我是usinf代码如下。 你能帮我解决这个问题吗?

try{ JSch jsch=new JSch(); String host=null; if(arg.length>0){ host=arg[0]; } else{ host=JOptionPane.showInputDialog("Enter username@hostname", "root@10.46.68.147"); } String user=host.substring(0, host.indexOf('@')); host=host.substring(host.indexOf('@')+1); Session session=jsch.getSession(user, host, 22); //Session session=jsch.getSession("root", "10.46.68.147", 4184); // username and password will be given via UserInfo interface. UserInfo ui=new MyUserInfo(); session.setUserInfo(ui); session.connect(); String temp = ""; String all_content = "docker ps -a;docker attach 9071d6cda4d8;client" //Open a session and send the commands Channel channel=session.openChannel("exec"); ((ChannelExec) channel).setPty(true); //command for running groove containers channel.setXForwarding(true); ((ChannelExec)channel).setCommand(all_content); channel.setInputStream(null); ((ChannelExec)channel).setErrStream(System.err); InputStream in=channel.getInputStream(); channel.connect();