mirror of
https://github.com/skooner-k8s/skooner.git
synced 2026-02-14 17:49:55 +00:00
Wrapping up rename and pointing k8s yaml files to github hosted docker images
This commit is contained in:
35
README.md
35
README.md
@@ -1,10 +1,9 @@
|
||||
# Skooner - Kubernetes Dashboard
|
||||
|
||||
Skooner is a sandbox project of the [Cloud Native Computing Foundation](https://www.cncf.io/sandbox-projects).
|
||||
__We are changing our name from k8dash to Skooner! Please bear with us as we update our documentation and codebase to reflect this change. If you previously installed k8dash, you will need to uninstall it from your cluster and install Skooner instead. For most cases this can be done by running the following `kubectl delete deployment,service k8dash`__
|
||||
|
||||
__(FYI: we are changing our name from "k8dash" to "Skooner"! Please bear with us as we transition all of our documentation and codebase to reflect this name change.)__
|
||||
|
||||
Skooner is the easiest way to manage your Kubernetes cluster.
|
||||
Skooner is the easiest way to manage your Kubernetes cluster. Skooner is now a sandbox project of the [Cloud Native Computing Foundation](https://www.cncf.io/sandbox-projects)!
|
||||
|
||||
* **Full cluster management**: Namespaces, Nodes, Pods, Replica Sets, Deployments, Storage, RBAC and more
|
||||
* **Blazing fast and Always Live**: no need to refresh pages to see the latest cluster status
|
||||
@@ -19,19 +18,21 @@ Skooner is the easiest way to manage your Kubernetes cluster.
|
||||
<br>
|
||||
|
||||
## Table of Contents
|
||||
* [Prerequisites](#Prerequisites)
|
||||
* [Getting Started](#Getting-started)
|
||||
* [Kubectl proxy](#kubectl-proxy)
|
||||
* [Logging in](#Logging-in)
|
||||
* [Service Account Token](#Service-Account-Token)
|
||||
* [OIDC](#oidc)
|
||||
* [NodePort](#Nodeport)
|
||||
* [Metrics](#Metrics)
|
||||
* [Development](#Development)
|
||||
* [Skooner Architecture](#Skooner-architecture)
|
||||
* [Server](#Server)
|
||||
* [Client](#Client)
|
||||
* [License](#License)
|
||||
- [Skooner - Kubernetes Dashboard](#skooner---kubernetes-dashboard)
|
||||
- [Table of Contents](#table-of-contents)
|
||||
- [Prerequisites](#prerequisites)
|
||||
- [Getting Started](#getting-started)
|
||||
- [kubectl proxy](#kubectl-proxy)
|
||||
- [Logging in](#logging-in)
|
||||
- [Service Account Token](#service-account-token)
|
||||
- [OIDC](#oidc)
|
||||
- [NodePort](#nodeport)
|
||||
- [Metrics](#metrics)
|
||||
- [Development](#development)
|
||||
- [Skooner Architecture](#skooner-architecture)
|
||||
- [Server](#server)
|
||||
- [Client](#client)
|
||||
- [License](#license)
|
||||
|
||||
## Prerequisites
|
||||
* A running Kubernetes cluster (e.g., [minikube](https://kubernetes.io/docs/tasks/tools/install-minikube/)), with...
|
||||
@@ -130,7 +131,7 @@ kubectl apply -f https://raw.githubusercontent.com/skooner-k8s/skooner/master/ku
|
||||
|
||||
```
|
||||
|
||||
Additionally, you can provide other OIDC options via these environment variables:
|
||||
Additionally, you can provide other OIDC options via these environment variables:
|
||||
* `OIDC_SCOPES`: The default value for this value is `openid email`, but additional scopes can also be added using something like `OIDC_SCOPES="openid email groups"`
|
||||
* `OIDC_METADATA`: Skooner uses the excellent [node-openid-client](https://github.com/panva/node-openid-client) module. `OIDC_METADATA` will take a JSON string and pass it to the `Client` constructor. Docs [here](https://github.com/panva/node-openid-client/blob/master/docs/README.md#client). For example, `OIDC_METADATA='{"token_endpoint_auth_method":"client_secret_post"}`
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Versioning and Release Strategy
|
||||
# Versioning and Release Strategy - Status: Proposed
|
||||
## Table of Contents
|
||||
- **[Versioning Strategy](#versioning-strategy)**<br>
|
||||
- **[Release Strategy](#release-strategy)**<br>
|
||||
@@ -6,28 +6,24 @@
|
||||
- **[Breaking Changes Guide](#breaking-changes-guide)**<br>
|
||||
|
||||
## Versioning Strategy
|
||||
Once Skooner version v1.0.0 is released, subsequent releases will follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
Until then, breaking changes may occur without an uptick to the Major version.
|
||||
Once Skooner version v1.0.0 is released, subsequent releases will follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
Until then, breaking changes may occur without an uptick to the Major version.
|
||||
|
||||
Versions will use the `v<semantic version>` tag pattern.
|
||||
|
||||
## Release Strategy
|
||||
### Major Release
|
||||
**Cadence**: Approximately every 6 months
|
||||
|
||||
**Method**:
|
||||
1. Release current content in Stable branch as a Minor/Patch release
|
||||
2. Replace Stable branch content with everything from Main branch
|
||||
3. Release updated Stable branch as a Major release
|
||||
|
||||
### Minor/Patch Release
|
||||
**Cadence**: Approximately once a month
|
||||
|
||||
**Method**: Release Stable branch as a Minor/Patch release
|
||||
|
||||
### Strategy Reasoning
|
||||
- To support agile feature additions at a monthly pace, users of Skooner can expect 6 months of Stable updates on each Major version before
|
||||
needing to review any breaking changes. Users can simply subscribe to a particular Major version and pull the latest
|
||||
- To support agile feature additions at a regular pace, users of Skooner can expect Stable updates on each Major version before
|
||||
needing to review any breaking changes. Users can simply subscribe to a particular Major version and pull the latest
|
||||
changes for that version without worry.
|
||||
- If users want to be on the cutting edge, they have the option of subscribing to the latest changes on the Main branch.
|
||||
- Helpful when needing to perform security patches for previous Major releases, fewer Major releases means less work.
|
||||
@@ -55,38 +51,37 @@ The rest of this section will go into more detailed examples of breaking changes
|
||||
#### Dropping Support for a K8s Cluster Version
|
||||
Reasons this might happen:
|
||||
- Adding a feature that only works on newer K8s clusters and not having a feature switch that would allow for the new
|
||||
feature to go dark on older cluster versions, maintaining the functionality that was present before the feature add.
|
||||
feature to go dark on older cluster versions, maintaining the functionality that was present before the feature add.
|
||||
- Removing any logic that is needed to support a particular K8s cluster version
|
||||
|
||||
#### Dropping Support for a CRD or Version of a CRD
|
||||
HPA for example:
|
||||
- If HPA support is removed
|
||||
- Logic is added to scrape the new HPA CRD fields provided in K8s 1.18 and isn't able to continue supporting the
|
||||
- Logic is added to scrape the new HPA CRD fields provided in K8s 1.18 and isn't able to continue supporting the
|
||||
limited information from 1.17.
|
||||
|
||||
#### Browser Support
|
||||
Browser support is an important interface because companies often leverage a single browser for all needs and sometimes
|
||||
Browser support is an important interface because companies often leverage a single browser for all needs and sometimes
|
||||
they get locked into old versions for a variety of reasons. The following are examples of breaking changes:
|
||||
- Removing support for a browser type (Mozilla, Chrome, etc)
|
||||
- Removing support for a browser version
|
||||
- Adding a feature that won't work on an older browser, such as the deprecations mentioned above
|
||||
|
||||
#### OpenId Connect Support
|
||||
Deprecation of a previously supported version of [OpenId Connect](https://github.com/indeedeng/k8dash#oidc)
|
||||
Deprecation of a previously supported version of [OpenId Connect](https://github.com/skooner-k8s/skooner#oidc)
|
||||
|
||||
#### Metrics-Server Support
|
||||
Deprecation of a previously supported version of [metrics-server](https://github.com/indeedeng/k8dash#metrics)
|
||||
Deprecation of a previously supported version of [metrics-server](https://github.com/skooner-k8s/skooner#metrics)
|
||||
|
||||
#### Noteworthy Performance Changes
|
||||
Changes in the minimum resource requirements for the deployment, due to a feature change. This can be hard to identify,
|
||||
Changes in the minimum resource requirements for the deployment, due to a feature change. This can be hard to identify,
|
||||
but ideally is considered in obvious cases.
|
||||
|
||||
A new feature might be more CPU intensive or require caching that increases memory requirements. Without this new
|
||||
minimum, Skooner might crash. Consider the following:
|
||||
|
||||
- How might the requested change impact the performance of pulling or presenting a list of N items on large and active clusters?
|
||||
- Pulling a large dataset (even for a few items), depending on the auto-refresh frequency and use frequency,
|
||||
- Pulling a large dataset (even for a few items), depending on the auto-refresh frequency and use frequency,
|
||||
could cause congestion, even on a small cluster
|
||||
- Any added caching might increase the minimum memory consumption
|
||||
|
||||
|
||||
2
client/package-lock.json
generated
2
client/package-lock.json
generated
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "client",
|
||||
"name": "@skooner-k8s/skooner-client",
|
||||
"version": "0.1.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
"name": "@skooner-k8s/skooner-client",
|
||||
"version": "0.1.0",
|
||||
"homepage": ".",
|
||||
"repository" : {
|
||||
"type" : "git",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "ssh://git@github.com/skooner-k8s/skooner.git",
|
||||
"directory": "skooner/client"
|
||||
},
|
||||
|
||||
@@ -49,8 +49,7 @@ export default class Account extends Base<{}, State> {
|
||||
|
||||
<div className='contentPanel'>
|
||||
<h3>Learn More</h3>
|
||||
<div>Follow K8dash on <a href='https://github.com/indeedeng/k8dash'>GitHub</a></div>
|
||||
<div>or at <a href='https://hub.docker.com/r/herbrandson/k8dash'>DockerHub</a></div>
|
||||
<div>Follow Skooner on <a href='https://github.com/skooner-k8s/skooner'>GitHub</a></div>
|
||||
</div>
|
||||
|
||||
<div className='contentPanel'>
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
k8dash:
|
||||
- apiVersion: v1
|
||||
appVersion: 0.0.1
|
||||
created: 2019-04-25T11:53:15.386073-05:00
|
||||
description: A Helm chart for Kubernetes Skooner
|
||||
digest: 7a84cff8455803b1a5610987e054cebbe52b14878a2db6b22ae7b455a6105e09
|
||||
maintainers:
|
||||
- email: kiryanov.i@gmail.com
|
||||
name: Ivan Kirianov
|
||||
- email: eric@herbrandson.com
|
||||
name: Eric Herbrandson
|
||||
name: k8dash
|
||||
urls:
|
||||
- k8dash-0.0.1.tgz
|
||||
version: 0.0.1
|
||||
generated: 2019-04-25T11:53:15.385127-05:00
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
k8dash*.tgz
|
||||
@@ -1,10 +0,0 @@
|
||||
apiVersion: v1
|
||||
version: 0.0.3
|
||||
appVersion: 0.0.1
|
||||
name: k8dash
|
||||
description: A Helm chart for Kubernetes K8Dash
|
||||
maintainers:
|
||||
- name: Ivan Kirianov
|
||||
email: kiryanov.i@gmail.com
|
||||
- name: Eric Herbrandson
|
||||
email: eric@herbrandson.com
|
||||
@@ -1,46 +0,0 @@
|
||||
apiVersion: v1
|
||||
entries:
|
||||
k8dash:
|
||||
- apiVersion: v1
|
||||
appVersion: 0.0.1
|
||||
created: "2020-01-30T16:04:39.096068-05:00"
|
||||
description: A Helm chart for Kubernetes K8Dash
|
||||
digest: 8b8a95c95f36967f3a8d7f93e5987887d8bf08e4f0565d4f3495a0015f25042f
|
||||
maintainers:
|
||||
- email: kiryanov.i@gmail.com
|
||||
name: Ivan Kirianov
|
||||
- email: eric@herbrandson.com
|
||||
name: Eric Herbrandson
|
||||
name: k8dash
|
||||
urls:
|
||||
- k8dash-0.0.3.tgz
|
||||
version: 0.0.3
|
||||
- apiVersion: v1
|
||||
appVersion: 0.0.1
|
||||
created: "2020-01-30T16:04:39.096068-05:00"
|
||||
description: A Helm chart for Kubernetes K8Dash
|
||||
digest: 032d1170af9317e6270b6a139f3a3a0fc3f7e25d3966e2ec30fed5077389e94e
|
||||
maintainers:
|
||||
- email: kiryanov.i@gmail.com
|
||||
name: Ivan Kirianov
|
||||
- email: eric@herbrandson.com
|
||||
name: Eric Herbrandson
|
||||
name: k8dash
|
||||
urls:
|
||||
- k8dash-0.0.2.tgz
|
||||
version: 0.0.2
|
||||
- apiVersion: v1
|
||||
appVersion: 0.0.1
|
||||
created: "2020-01-30T16:04:39.0950656-05:00"
|
||||
description: A Helm chart for Kubernetes K8Dash
|
||||
digest: 8011dae258eb9c869d3cdeb9b29f7cb1b27dbb08b84b518aef2e8777da8b4778
|
||||
maintainers:
|
||||
- email: kiryanov.i@gmail.com
|
||||
name: Ivan Kirianov
|
||||
- email: eric@herbrandson.com
|
||||
name: Eric Herbrandson
|
||||
name: k8dash
|
||||
urls:
|
||||
- k8dash-0.0.1.tgz
|
||||
version: 0.0.1
|
||||
generated: "2020-01-30T16:04:39.0950656-05:00"
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,19 +0,0 @@
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: k8dash-sa
|
||||
namespace: default
|
||||
---
|
||||
@@ -1,32 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: "{{ .Chart.Name }}"
|
||||
labels:
|
||||
app: k8dash
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: k8dash
|
||||
release: {{ .Release.Name }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: k8dash
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
image: "{{ .Values.image.registry }}/{{ .Values.image.name }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
cpu: "25m"
|
||||
memory: "100Mi"
|
||||
limits:
|
||||
cpu: "100m"
|
||||
memory: "200Mi"
|
||||
@@ -1,30 +0,0 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: k8dash
|
||||
labels:
|
||||
app: k8dash
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
{{- if .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.ingress.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
rules:
|
||||
- host: {{ .Values.ingress.host }}
|
||||
http:
|
||||
paths:
|
||||
{{- range $p := .Values.ingress.paths }}
|
||||
- path: {{ $p }}
|
||||
backend:
|
||||
serviceName: k8dash
|
||||
servicePort: 80
|
||||
{{- end -}}
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{ toYaml .Values.ingress.tls | indent 4 }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,17 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: k8dash
|
||||
labels:
|
||||
app: k8dash
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
spec:
|
||||
ports:
|
||||
- name: k8dash
|
||||
port: 80
|
||||
targetPort: 4654
|
||||
selector:
|
||||
app: k8dash
|
||||
release: {{ .Release.Name }}
|
||||
@@ -1,21 +0,0 @@
|
||||
{{- if .Values.createServiceAccount -}}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: k8dash-sa
|
||||
namespace: {{ .Release.Namespace }}
|
||||
---
|
||||
{{- end -}}
|
||||
@@ -1,43 +0,0 @@
|
||||
replicaCount: 1
|
||||
revisionHistoryLimit: 1
|
||||
|
||||
image:
|
||||
registry: herbrandson
|
||||
name: k8dash
|
||||
tag: latest
|
||||
pullPolicy: IfNotPresent
|
||||
resources:
|
||||
requests:
|
||||
cpu: 200m
|
||||
memory: 300Mi
|
||||
|
||||
livenessProbe:
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
|
||||
service:
|
||||
name: Node
|
||||
type: NodePort
|
||||
servicePort: 4654
|
||||
|
||||
# If true will create k8dash-sa and associate with cluster-admin role. Secret can be used for auth page with:
|
||||
# kubectl describe secret k8dash-sa-token-xxxxx
|
||||
createServiceAccount: false
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
|
||||
## Kubernetes Dashboard Ingress annotations
|
||||
# annotations:
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
|
||||
## Kubernetes Dashboard Ingress hostnames
|
||||
# host: kubernetes-dashboard.domain.com
|
||||
paths:
|
||||
- /
|
||||
|
||||
## Kubernetes Dashboard Ingress TLS configuration
|
||||
# tls:
|
||||
# - secretName: kubernetes-dashboard-tls
|
||||
# hosts:
|
||||
# - kubernetes-dashboard.domain.com
|
||||
@@ -1,21 +1,21 @@
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
spec:
|
||||
containers:
|
||||
- name: k8dash
|
||||
image: herbrandson/k8dash:latest
|
||||
- name: skooner
|
||||
image: ghcr.io/skooner-k8s/skooner:stable
|
||||
ports:
|
||||
- containerPort: 4654
|
||||
livenessProbe:
|
||||
@@ -32,11 +32,11 @@ spec:
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
- port: 4654
|
||||
selector:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
spec:
|
||||
containers:
|
||||
- name: k8dash
|
||||
image: herbrandson/k8dash:latest
|
||||
- name: skooner
|
||||
image: ghcr.io/skooner-k8s/skooner:stable
|
||||
ports:
|
||||
- containerPort: 4654
|
||||
livenessProbe:
|
||||
@@ -29,17 +29,17 @@ spec:
|
||||
- name: OIDC_URL
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
key: url
|
||||
- name: OIDC_CLIENT_ID
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
key: id
|
||||
- name: OIDC_SECRET
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
key: secret
|
||||
nodeSelector:
|
||||
'beta.kubernetes.io/os': linux
|
||||
@@ -48,11 +48,11 @@ spec:
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 4654
|
||||
selector:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
name: skooner-sa
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1beta1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: k8dash-sa
|
||||
name: skooner-sa
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: k8dash-sa
|
||||
name: skooner-sa
|
||||
namespace: default
|
||||
---
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
kind: Deployment
|
||||
apiVersion: apps/v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
spec:
|
||||
containers:
|
||||
- name: k8dash
|
||||
image: herbrandson/k8dash:latest
|
||||
- name: skooner
|
||||
image: ghcr.io/skooner-k8s/skooner:stable
|
||||
ports:
|
||||
- containerPort: 4654
|
||||
livenessProbe:
|
||||
@@ -32,11 +32,11 @@ spec:
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: k8dash
|
||||
name: skooner
|
||||
namespace: kube-system
|
||||
spec:
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: 4654
|
||||
selector:
|
||||
k8s-app: k8dash
|
||||
k8s-app: skooner
|
||||
|
||||
Reference in New Issue
Block a user