mirror of https://github.com/portainer/k8s.git
parent
b2e9d8757e
commit
aebd5bb518
|
@ -16,7 +16,7 @@
|
|||
# 3. Remove references to helm in rendered manifests (no point attaching a label like "app.kubernetes.io/managed-by: Helm" if we are not!)
|
||||
|
||||
# Create nodeport manifest for ce
|
||||
helm install --no-hooks --namespace zorgburger --set service.type=NodePort --set disableTest=true --dry-run zorgburger charts/portainer \
|
||||
helm install --no-hooks --namespace zorgburger --set service.type=NodePort --set disableTest=true --set createNamespace=true --dry-run zorgburger charts/portainer \
|
||||
| sed -n '1,/NOTES/p' | sed \$d \
|
||||
| grep -vE 'NAME|LAST DEPLOYED|NAMESPACE|STATUS|REVISION|HOOKS|MANIFEST|TEST SUITE' \
|
||||
| grep -iv helm \
|
||||
|
@ -26,7 +26,7 @@ helm install --no-hooks --namespace zorgburger --set service.type=NodePort --set
|
|||
|
||||
|
||||
# Create lb manifest for ce
|
||||
helm install --no-hooks --namespace zorgburger --set service.type=LoadBalancer --set disableTest=true --dry-run zorgburger charts/portainer \
|
||||
helm install --no-hooks --namespace zorgburger --set service.type=LoadBalancer --set disableTest=true --set createNamespace=true --dry-run zorgburger charts/portainer \
|
||||
| sed -n '1,/NOTES/p' | sed \$d \
|
||||
| grep -vE 'NAME|LAST DEPLOYED|NAMESPACE|STATUS|REVISION|HOOKS|MANIFEST|TEST SUITE' \
|
||||
| grep -iv helm \
|
||||
|
@ -35,7 +35,7 @@ helm install --no-hooks --namespace zorgburger --set service.type=LoadBalancer -
|
|||
> deploy/manifests/portainer/portainer-lb.yaml
|
||||
|
||||
# Create nodeport manifest for ee
|
||||
helm install --no-hooks --namespace zorgburger --set enterpriseEdition.enabled=true --set service.type=NodePort --set disableTest=true --dry-run zorgburger charts/portainer \
|
||||
helm install --no-hooks --namespace zorgburger --set enterpriseEdition.enabled=true --set service.type=NodePort --set disableTest=true --set createNamespace=true --dry-run zorgburger charts/portainer \
|
||||
| sed -n '1,/NOTES/p' | sed \$d \
|
||||
| grep -vE 'NAME|LAST DEPLOYED|NAMESPACE|STATUS|REVISION|HOOKS|MANIFEST|TEST SUITE' \
|
||||
| grep -iv helm \
|
||||
|
@ -44,7 +44,7 @@ helm install --no-hooks --namespace zorgburger --set enterpriseEdition.enabled=t
|
|||
> deploy/manifests/portainer/portainer-ee.yaml
|
||||
|
||||
# Create lb manifest for ee
|
||||
helm install --no-hooks --namespace zorgburger --set enterpriseEdition.enabled=true --set service.type=LoadBalancer --set disableTest=true --dry-run zorgburger charts/portainer \
|
||||
helm install --no-hooks --namespace zorgburger --set enterpriseEdition.enabled=true --set service.type=LoadBalancer --set disableTest=true --set createNamespace=true --dry-run zorgburger charts/portainer \
|
||||
| sed -n '1,/NOTES/p' | sed \$d \
|
||||
| grep -vE 'NAME|LAST DEPLOYED|NAMESPACE|STATUS|REVISION|HOOKS|MANIFEST|TEST SUITE' \
|
||||
| grep -iv helm \
|
||||
|
|
47
README.md
47
README.md
|
@ -24,6 +24,8 @@ This repo contains helm and YAML for deploying Portainer into a Kubernetes envir
|
|||
|
||||
# Deploying with Helm
|
||||
|
||||
Ensure you're using at least helm v3.2, which [includes support](https://github.com/helm/helm/pull/7648) for the `--create-namespace` argument.
|
||||
|
||||
Install the repository:
|
||||
|
||||
```
|
||||
|
@ -31,12 +33,6 @@ helm repo add portainer https://portainer.github.io/k8s/
|
|||
helm repo update
|
||||
```
|
||||
|
||||
Create the portainer namespace:
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
```
|
||||
|
||||
## Community Edition
|
||||
|
||||
Install the helm chart:
|
||||
|
@ -44,20 +40,22 @@ Install the helm chart:
|
|||
### Using NodePort on a local/remote cluster
|
||||
|
||||
```
|
||||
helm install -n portainer portainer portainer/portainer
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer
|
||||
```
|
||||
|
||||
### Using a cloud provider's loadbalancer
|
||||
|
||||
```
|
||||
helm install -n portainer portainer portainer/portainer --set service.type=LoadBalancer
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer \
|
||||
--set service.type=LoadBalancer
|
||||
```
|
||||
|
||||
|
||||
### Using ClusterIP with an ingress
|
||||
|
||||
```
|
||||
helm install -n portainer portainer portainer/portainer --set service.type=ClusterIP
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer \
|
||||
--set service.type=ClusterIP
|
||||
```
|
||||
|
||||
For advanced helm customization, see the [chart README](/charts/portainer/README.md)
|
||||
|
@ -67,48 +65,45 @@ For advanced helm customization, see the [chart README](/charts/portainer/README
|
|||
### Using NodePort on a local/remote cluster
|
||||
|
||||
```
|
||||
helm install --set enterpriseEdition.enabled=true -n portainer portainer portainer/portainer
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer \
|
||||
--set enterpriseEdition.enabled=true
|
||||
```
|
||||
|
||||
### Using a cloud provider's loadbalancer
|
||||
|
||||
```
|
||||
helm install --set enterpriseEdition.enabled=true -n portainer portainer portainer/portainer --set service.type=LoadBalancer
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer \
|
||||
--set enterpriseEdition.enabled=true \
|
||||
--set service.type=LoadBalancer
|
||||
```
|
||||
|
||||
|
||||
### Using ClusterIP with an ingress
|
||||
|
||||
```
|
||||
helm install --set enterpriseEdition.enabled=true -n portainer portainer portainer/portainer --set service.type=ClusterIP
|
||||
helm install --create-namespace -n portainer portainer portainer/portainer \
|
||||
--set enterpriseEdition.enabled=true \
|
||||
--set service.type=ClusterIP
|
||||
```
|
||||
|
||||
For advanced helm customization, see the [chart README](/charts/portainer/README.md)
|
||||
|
||||
# Deploying with manifests
|
||||
|
||||
If you're not into helm, you can install Portainer using manifests, by first creating the portainer namespace:
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
```
|
||||
|
||||
And then...
|
||||
If you're not using helm, you can install Portainer using manifests directly, as follows
|
||||
|
||||
## Community Edition
|
||||
|
||||
### Using NodePort on a local/remote cluster
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
kubectl apply -n portainer -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer.yaml
|
||||
kubectl apply -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer.yaml
|
||||
```
|
||||
|
||||
### Using a cloud provider's loadbalancer
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
kubectl apply -n portainer -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-lb.yaml
|
||||
kubectl apply -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-lb.yaml
|
||||
```
|
||||
|
||||
## Enterprise Edition
|
||||
|
@ -116,15 +111,13 @@ kubectl apply -n portainer -f https://raw.githubusercontent.com/portainer/k8s/ma
|
|||
### Using NodePort on a local/remote cluster
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
kubectl apply -n portainer -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-ee.yaml
|
||||
kubectl apply- f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-ee.yaml
|
||||
```
|
||||
|
||||
### Using a cloud provider's loadbalancer
|
||||
|
||||
```
|
||||
kubectl create namespace portainer
|
||||
kubectl apply -n portainer -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-lb-ee.yaml
|
||||
kubectl apply -f https://raw.githubusercontent.com/portainer/k8s/master/deploy/manifests/portainer/portainer-lb-ee.yaml
|
||||
```
|
||||
|
||||
# Note re persisting data
|
||||
|
|
|
@ -16,7 +16,7 @@ type: application
|
|||
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
version: 1.0.9
|
||||
version: 1.0.10
|
||||
|
||||
# This is the version number of the application being deployed. This version number should be
|
||||
# incremented each time you make changes to the application.
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
{{ if .Values.createNamespace }}
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: portainer
|
||||
{{ end }}
|
|
@ -1,4 +1,10 @@
|
|||
---
|
||||
# Source: portainer/templates/namespace.yaml
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: portainer
|
||||
---
|
||||
# Source: portainer/templates/serviceaccount.yaml
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
|
@ -8,7 +14,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
---
|
||||
# Source: portainer/templates/pvc.yaml
|
||||
kind: "PersistentVolumeClaim"
|
||||
|
@ -22,7 +28,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
accessModes:
|
||||
- "ReadWriteOnce"
|
||||
|
@ -38,7 +44,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
@ -58,7 +64,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
|
@ -86,7 +92,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
---
|
||||
# Source: portainer/templates/namespace.yaml
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: portainer
|
||||
---
|
||||
# Source: portainer/templates/serviceaccount.yaml
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
|
@ -8,7 +14,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
---
|
||||
# Source: portainer/templates/pvc.yaml
|
||||
kind: "PersistentVolumeClaim"
|
||||
|
@ -22,7 +28,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
accessModes:
|
||||
- "ReadWriteOnce"
|
||||
|
@ -38,7 +44,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
@ -58,7 +64,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
ports:
|
||||
|
@ -84,7 +90,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
---
|
||||
# Source: portainer/templates/namespace.yaml
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: portainer
|
||||
---
|
||||
# Source: portainer/templates/serviceaccount.yaml
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
|
@ -8,7 +14,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
---
|
||||
# Source: portainer/templates/pvc.yaml
|
||||
kind: "PersistentVolumeClaim"
|
||||
|
@ -22,7 +28,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
accessModes:
|
||||
- "ReadWriteOnce"
|
||||
|
@ -38,7 +44,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
@ -58,7 +64,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
type: LoadBalancer
|
||||
ports:
|
||||
|
@ -84,7 +90,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
---
|
||||
# Source: portainer/templates/namespace.yaml
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: portainer
|
||||
---
|
||||
# Source: portainer/templates/serviceaccount.yaml
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
|
@ -8,7 +14,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
---
|
||||
# Source: portainer/templates/pvc.yaml
|
||||
kind: "PersistentVolumeClaim"
|
||||
|
@ -22,7 +28,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
accessModes:
|
||||
- "ReadWriteOnce"
|
||||
|
@ -38,7 +44,7 @@ metadata:
|
|||
labels:
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
@ -58,7 +64,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
|
@ -86,7 +92,7 @@ metadata:
|
|||
io.portainer.kubernetes.application.stack: portainer
|
||||
app.kubernetes.io/name: portainer
|
||||
app.kubernetes.io/instance: portainer
|
||||
app.kubernetes.io/version: "2.0.1"
|
||||
app.kubernetes.io/version: "ce-latest-ee-2.0.0"
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
|
|
Loading…
Reference in New Issue