Files
my-spring/web-vue/packages/biz/api/biz/myDocker.ts
2026-04-13 19:43:12 +08:00

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 });