68 lines
2.5 KiB
TypeScript
68 lines
2.5 KiB
TypeScript
/**
|
|
* Copyright (c) 2013-Now https://jeesite.com All rights reserved.
|
|
* No deletion without permission, or be held responsible to law.
|
|
* @author gaoxq
|
|
*/
|
|
import { defHttp } from '@jeesite/core/utils/http/axios';
|
|
import { useGlobSetting } from '@jeesite/core/hooks/setting';
|
|
import { BasicModel } from '@jeesite/core/api/model/baseModel';
|
|
|
|
const { adminPath } = useGlobSetting();
|
|
|
|
export interface ServerInfo extends BasicModel<ServerInfo> {
|
|
hostIp?: string; // 主机域名
|
|
hostPort?: number; // 主机端口
|
|
username: string; // 登录账号
|
|
hostName: string; // 主机名称
|
|
accountId: string; // 账号标识
|
|
containerId: string; // 容器ID
|
|
}
|
|
|
|
export interface SystemInfo extends BasicModel<SystemInfo> {
|
|
cpu: string; // CPU使用率
|
|
memory: string; // 内存
|
|
disk: string; // 磁盘
|
|
}
|
|
|
|
|
|
export interface ContainerInfo extends BasicModel<ContainerInfo> {
|
|
image: string; // 镜像名称
|
|
command: string; // 启动命令
|
|
status: string; // 运行状态
|
|
created: string; // 创建时间
|
|
names: string; // 容器名称
|
|
ports: string; // 容器端口
|
|
containerId: string; // 容器ID
|
|
accountId: string; // 账号标识
|
|
}
|
|
|
|
export interface DockerResult extends BasicModel<DockerResult> {
|
|
success: boolean; // 执行状态
|
|
output: string; // 执行结果
|
|
error: string; // 异常结果
|
|
message: string; // 执行信息
|
|
}
|
|
|
|
export const myServerInfo = () =>
|
|
defHttp.get<ServerInfo[]>({ url: adminPath + '/docker/myServer/listAll' });
|
|
|
|
export const myContainerInfo = (params?: ContainerInfo | any) =>
|
|
defHttp.get<ContainerInfo[]>({ url: adminPath + '/docker/myContainer/listAll', params });
|
|
|
|
export const mySystemInfo = (params?: ContainerInfo | any) =>
|
|
defHttp.get<SystemInfo>({ url: adminPath + '/docker/myContainer/systemInfo', params });
|
|
|
|
export const myDockerStop = (params?: ContainerInfo | any) =>
|
|
defHttp.get<DockerResult>({ url: adminPath + '/docker/myContainer/stop', params });
|
|
|
|
export const myDockerStart = (params?: ContainerInfo | any) =>
|
|
defHttp.get<DockerResult>({ url: adminPath + '/docker/myContainer/start', params });
|
|
|
|
export const myDockerRestart = (params?: ContainerInfo | any) =>
|
|
defHttp.get<DockerResult>({ url: adminPath + '/docker/myContainer/restart', params });
|
|
|
|
export const myDockerLogs = (params?: ContainerInfo | any) =>
|
|
defHttp.get<DockerResult>({ url: adminPath + '/docker/myContainer/logs', params });
|
|
|
|
export const myDockerInspect = (params?: ContainerInfo | any) =>
|
|
defHttp.get<DockerResult>({ url: adminPath + '/docker/myContainer/inspect', params }); |