引入包
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.53</version>
</dependency>
console
@RequestMapping(value = "/harbor/getSecret", method = RequestMethod.POST)
public JsonResponse<String> getHarborgerSecret(@RequestBody Map<String,Object> params) throws Exception {
String userName = MapUtil.getString(params,"userName");
String result = repositoryService.getHarborgerSecret(userName);
return new JsonResponse<String>(result);
}
service
public String getHarborgerSecret(String userName) throws Exception {
String commd = "sudo docker login -u "+userName+" -p Harbor12345 harbor.test.com ; sudo cat /root/.docker/config.json | base64 -w 0";
//因为执行两条命,所以返回值通过\n来 汲取,并且后一部分加密后的密文。
Map map = SshUtils.execCmd(commd);
String vaule = (String)map.get(commd);
String result = vaule.split("\n")[1].replace("\n",