package org.dhorse.infrastructure.strategy.cluster;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Base64;
import java.util.Base64.Encoder;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import org.dhorse.api.enums.ActionTypeEnum;
import org.dhorse.api.enums.AffinityLevelEnum;
import org.dhorse.api.enums.ImageSourceEnum;
import org.dhorse.api.enums.MessageCodeEnum;
import org.dhorse.api.enums.NginxVersionEnum;
import org.dhorse.api.enums.NuxtDeploymentTypeEnum;
import org.dhorse.api.enums.PackageFileTypeEnum;
import org.dhorse.api.enums.ReplicaStatusEnum;
import org.dhorse.api.enums.SchedulingTypeEnum;
import org.dhorse.api.enums.TechTypeEnum;
import org.dhorse.api.enums.YesOrNoEnum;
import org.dhorse.api.param.app.env.replica.EnvReplicaPageParam;
import org.dhorse.api.param.cluster.ClusterNodePageParam;
import org.dhorse.api.param.cluster.namespace.ClusterNamespacePageParam;
import org.dhorse.api.response.PageData;
import org.dhorse.api.response.model.App;
import org.dhorse.api.response.model.AppEnv;
import org.dhorse.api.response.model.AppEnv.EnvExtendSpringBoot;
import org.dhorse.api.response.model.AppExtendDjango;
import org.dhorse.api.response.model.AppExtendFlask;
import org.dhorse.api.response.model.AppExtendJava;
import org.dhorse.api.response.model.AppExtendNext;
import org.dhorse.api.response.model.AppExtendNodejs;
import org.dhorse.api.response.model.AppExtendNuxt;
import org.dhorse.api.response.model.AppExtendPython;
import org.dhorse.api.response.model.ClusterNamespace;
import org.dhorse.api.response.model.ClusterNode;
import org.dhorse.api.response.model.EnvHealth;
import org.dhorse.api.response.model.EnvHealth.Item;
import org.dhorse.api.response.model.EnvLifecycle;
import org.dhorse.api.response.model.EnvReplica;
import org.dhorse.api.response.model.GlobalConfigAgg.ImageRepo;
import org.dhorse.api.response.model.GlobalConfigAgg.TraceTemplate;
import org.dhorse.infrastructure.model.JsonPatch;
import org.dhorse.infrastructure.model.ReplicaMetrics;
import org.dhorse.infrastructure.repository.po.AffinityTolerationPO;
import org.dhorse.infrastructure.repository.po.AppEnvPO;
import org.dhorse.infrastructure.repository.po.AppPO;
import org.dhorse.infrastructure.repository.po.ClusterPO;
import org.dhorse.infrastructure.strategy.cluster.model.DockerConfigJson;
import org.dhorse.infrastructure.strategy.cluster.model.DockerConfigJson.Auth;
import org.dhorse.infrastructure.strategy.cluster.model.Replica;
import org.dhorse.infrastructure.utils.Constants;
import org.dhorse.infrastructure.utils.DeploymentContext;
import org.dhorse.infrastructure.utils.DeploymentThreadPoolUtils;
import org.dhorse.infrastructure.utils.JsonUtils;
import org.dhorse.infrastructure.utils.K8sUtils;
import org.dhorse.infrastructure.utils.LogUtils;
import org.dhorse.infrastructure.utils.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.util.CollectionUtils;
import io.kubernetes.client.Copy;
import io.kubernetes.client.Exec;
import io.kubernetes.client.KubernetesConstants;
import io.kubernetes.client.Metrics;
import io.kubernetes.client.PodLogs;
import io.kubernetes.client.custom.IntOrString;
import io.kubernetes.client.custom.PodMetrics;
import io.kubernetes.client.custom.PodMetricsList;
import io.kubernetes.client.custom.Quantity;
import io.kubernetes.client.custom.V1Patch;
import io.kubernetes.client.openapi.ApiClient;
import io.kubernetes.client.openapi.ApiException;
import io.kubernetes.client.openapi.apis.AppsV1Api;
import io.kubernetes.client.openapi.apis.AutoscalingV1Api;
import io.kubernetes.client.openapi.apis.CoreV1Api;
import io.kubernetes.client.openapi.apis.NetworkingV1Api;
import io.kubernetes.client.openapi.models.V1Affinity;
import io.kubernetes.client.openapi.models.V1ConfigMapVolumeSource;
import io.kubernetes.client.openapi.models.V1Container;
import io.kubernetes.client.openapi.models.V1ContainerPort;
import io.kubernetes.client.openapi.models.V1ContainerStateTerminated;
import io.kubernetes.client.openapi.models.V1ContainerStatus;
import io.kubernetes.client.openapi.models.V1CrossVersionObjectReference;
import io.kubernetes.client.openapi.models.V1Deployment;
import io.kubernetes.client.openapi.models.V1DeploymentList;
import io.kubernetes.client.openapi.models.V1DeploymentSpec;
import io.kubernetes.client.openapi.models.V1DeploymentStrategy;
import io.kubernetes.client.openapi.models.V1EmptyDirVolumeSource;
import io.kubernetes.client.openapi.models.V1EnvVar;
import io.kubernetes.client.openapi.models.V1ExecAction;
import io.kubernetes.client.openapi.models.V1HTTPGetAction;
import io.kubernetes.client.openapi.models.V1HTTPIngressPath;
import io.kubernetes.client.openapi.models.V1HTTPIngressRuleValue;
import io.kubernetes.client.openapi.models.V1HorizontalPodAutoscaler;
import io.kubernetes.client.openapi.models.V1HorizontalPodAutoscalerList;
import io.kubernetes.client.openapi.models.V1HorizontalPodAutoscalerSpec;
import io.kubernetes.client.openapi.models.V1HostPathVolumeSource;
import io.kubernetes.client.openapi.models.V1Ingress;
import io.kubernetes.client.openapi.models.V1IngressBackend;
import io.kubernetes.client.openapi.models.V1IngressList;
import io.kubernetes.client.openapi.models.V1IngressRule;
import io.kubernetes.client.openapi.models.V1IngressServiceBackend;
import io.kubernetes.client.openapi.models.V1IngressSpec;
import io.kubernetes.client.openapi.models.V1LabelSelector;
import io.kubernetes.client.openapi.models.V1LabelSelectorRequirement;
import io.kubernetes.client.openapi.models.V1Lifecycle;
import io.kubernetes.client.openapi.models.V1LifecycleHandler;
import io.kubernetes.client.openapi.models.V1LocalObjectReference;
import io.kubernetes.client.openapi.models.V1Namespace;
import io.kubernetes.client.openapi.models.V1NamespaceList;
import io.kubernetes.client.openapi.models.V1NodeAffinity;
import io.kubernetes.client.openapi.models.V1NodeSelector;
import io.kubernetes.client.openapi.models.V1NodeSelectorRequirement;
import io.kubernetes.client.openapi.models.V1NodeSelectorTerm;
import io.kubernetes.client.openapi.models.V1ObjectMeta;
import io.kubernetes.client.openapi.models.V1Pod;
import io.kubernetes.client.openapi.models.V1PodAffinity;
import io.kubernetes.client.openapi.models.V1PodAffinityTerm;
import io.kubernetes.client.openapi.models.V1PodAntiAffinity;
import io.kubernetes.client.openapi.models.V1PodCondition;
import io.kubernetes.client.openapi.models.V1PodList;
import io.kubernetes.client.openapi.models.V1PodSpec;
import io.kubernetes.client.openapi.models.V1PodStatus;
import io.kubernetes.client.openapi.models.V1PodTemplateSpec;
import io.kubernetes.client.openapi.models.V1PreferredSchedulingTerm;
import io.kubernetes.client.openapi.models.V1Probe;
import io.kubernetes.client.openapi.models.V1ResourceRequirements;
import io.kubernetes.client.openapi.models.V1RollingUpdateDeployment;
import io.kubernetes.client.openapi.models.V1Secret;
import io.kubernetes.client.openapi.models.V1SecretList;
import io.kubernetes.client.openapi.models.V1Service;
import io.kubernetes.client.openapi.models.V1ServiceBackendPort;
import io.kubernetes.client.openapi.models.V1ServiceList;
import io.kubernetes.client.openapi.models.V1ServicePort;
import io.kubernetes.client.openapi.models.V1ServiceSpec;
import io.kubernetes.client.openapi.models.V1Status;
import io.kubernetes.client.openapi.models.V1TCPSocketAction;
import io.kubernetes.client.openapi.models.V1Toleration;
import io.kubernetes.client.openapi.models.V1Volume;
import io.kubernetes.client.openapi.models.V1VolumeMount;
import io.kubernetes.client.open
没有合适的资源?快使用搜索试试~ 我知道了~
DHorse是一个轻量级、简单易用的云应用管理平台,具有多云和多环境管理、应用管理和部署、服务治理等功能
共516个文件
java:330个
html:66个
js:18个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 26 浏览量
2023-12-16
15:03:25
上传
评论
收藏 2.04MB ZIP 举报
温馨提示
DHorse是一个轻量级、简单易用的云应用管理平台,具有多云和多环境管理、应用管理和部署、服务治理等功能,使用该平台不需要了解容器和k8s的概念
资源推荐
资源详情
资源评论
收起资源包目录
DHorse是一个轻量级、简单易用的云应用管理平台,具有多云和多环境管理、应用管理和部署、服务治理等功能 (516个子文件)
1.2.0 32KB
1.2.0 21KB
1.2.0 20KB
1.0.0 12KB
1.0.0 11KB
1.1.0 2KB
1.1.0 2KB
1.3.0 117B
1.5.0 99B
1.3.0 70B
1.5.0 62B
dhorse-start.bat 946B
dhorse-stop.bat 420B
layui.css 78KB
font-awesome.css 37KB
xterm.css 34KB
font-awesome.min.css 30KB
layuimini.css 17KB
layer.css 14KB
zyupload-1.0.0.min.css 9KB
laydate.css 7KB
default.css 4KB
code.css 1KB
step.css 1KB
public.css 942B
fontawesome-webfont.eot 162KB
iconfont.eot 46KB
loading-0.gif 6KB
loading-2.gif 2KB
loading-1.gif 701B
.gitignore 999B
update.html 47KB
add.html 41KB
detail.html 18KB
add.html 16KB
update.html 14KB
login.html 12KB
health.html 12KB
list.html 10KB
update.html 10KB
update.html 9KB
list.html 9KB
detail.html 9KB
list.html 9KB
list.html 9KB
add.html 9KB
list.html 9KB
index.html 8KB
list.html 8KB
add.html 7KB
jvm_metrics.html 7KB
update.html 7KB
list.html 6KB
list.html 6KB
detail.html 6KB
list.html 6KB
list.html 6KB
replica_metrics.html 6KB
list.html 5KB
lifecycle.html 5KB
code_repo.html 5KB
add.html 5KB
edit.html 5KB
list.html 5KB
list.html 5KB
list.html 5KB
detail.html 4KB
add.html 4KB
more.html 4KB
list.html 4KB
deploy.html 4KB
image_repo.html 4KB
prometheus.html 4KB
add.html 4KB
cas.html 4KB
add.html 4KB
ldap.html 3KB
wechat.html 3KB
add.html 3KB
add.html 3KB
update.html 3KB
dingding.html 3KB
feishu.html 3KB
update_password.html 3KB
edit.html 2KB
build_version.html 2KB
set_password.html 2KB
edit.html 2KB
add.html 2KB
add.html 2KB
add.html 2KB
terminal.html 2KB
cas_login.html 2KB
log.html 1KB
log.html 1KB
log.html 1KB
welcome.html 225B
favicon.ico 2KB
K8sClusterStrategy.java 84KB
K8sDeploymentHelper.java 44KB
共 516 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
Java程序员-张凯
- 粉丝: 1w+
- 资源: 6732
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功