1、啟動容器
/**
* 啟動容器
* @param name 容器名稱或Id
* @return
*/
public static ObjectVo startDocker(String name){
ObjectVo vo = new ObjectVo();
if (StringUtils.isBlank(name)){
vo.setCode(0);
vo.setMsg("參數(shù)不能為空");
vo.setObject(null);
return vo;
}
String url = origin + "/containers/" + name + "/start";
try {
Response response = OKHttpUtil.doSyncPost(url, null);
if (null != response) {
vo.setCode(response.code());
vo.setMsg(response.message());
vo.setObject(response.body().string());
}else{
vo.setCode(0);
vo.setMsg("請求出錯,沒有返回結(jié)果");
}
} catch (IOException e) {
// TODO Auto-generated catch block
vo.setCode(0);
vo.setMsg("請求出錯,沒有返回結(jié)果");
vo.setObject(null);
e.printStackTrace();
}
return vo;
}
狀態(tài)碼,ObjectVo.code可與其對比
204 – no error
304 – container already started
404 – no such container
500 – server error
2、ObjectVo代碼
@Data
public class ObjectVo {
private Integer code;
private String msg;
private Object object;
}
3、http請求
/**
* 同步實現(xiàn)POST方式請求
* @param url
* @param params
* @return
* @throws IOException
*/
public static Response doSyncPost(String url, Map<String, String> params) throws IOException{
if (StringUtils.isBlank(url)) {
return null;
}
FormBody.Builder builder = new FormBody.Builder();
Request request = null;
if (null != params && params.size() > 0) {
for (Map.Entry<String, String> entry : params.entrySet()) {
String value;
if (null == entry.getValue()) {
value = "";
}else{
value = entry.getValue();
}
builder.add(entry.getKey(), value);
}
RequestBody requestBody = builder.build();
request = new Request.Builder().url(url).post(requestBody).build();
}else{
request = new Request.Builder().url(url).post(RequestBody.create(null, "")).build();
}
OkHttpClient client = new OkHttpClient.Builder()
.connectTimeout(15, TimeUnit.SECONDS)
.readTimeout(15, TimeUnit.SECONDS)
.build();
Call call = client.newCall(request);
Response response = call.execute();
return response;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。