82 lines
1.6 KiB
YAML
82 lines
1.6 KiB
YAML
|
apiVersion: v1
|
||
|
kind: Namespace
|
||
|
metadata:
|
||
|
name: portainer
|
||
|
---
|
||
|
apiVersion: v1
|
||
|
kind: ServiceAccount
|
||
|
metadata:
|
||
|
name: portainer-sa-clusteradmin
|
||
|
namespace: portainer
|
||
|
---
|
||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||
|
kind: ClusterRoleBinding
|
||
|
metadata:
|
||
|
name: portainer-crb-clusteradmin
|
||
|
roleRef:
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
kind: ClusterRole
|
||
|
name: cluster-admin
|
||
|
subjects:
|
||
|
- kind: ServiceAccount
|
||
|
name: portainer-sa-clusteradmin
|
||
|
namespace: portainer
|
||
|
---
|
||
|
apiVersion: v1
|
||
|
kind: Service
|
||
|
metadata:
|
||
|
name: portainer-agent
|
||
|
namespace: portainer
|
||
|
spec:
|
||
|
type: NodePort
|
||
|
selector:
|
||
|
app: portainer-agent
|
||
|
ports:
|
||
|
- name: http
|
||
|
protocol: TCP
|
||
|
port: 9001
|
||
|
targetPort: 9001
|
||
|
nodePort: 30778
|
||
|
---
|
||
|
apiVersion: v1
|
||
|
kind: Service
|
||
|
metadata:
|
||
|
name: portainer-agent-headless
|
||
|
namespace: portainer
|
||
|
spec:
|
||
|
clusterIP: None
|
||
|
selector:
|
||
|
app: portainer-agent
|
||
|
---
|
||
|
apiVersion: apps/v1
|
||
|
kind: Deployment
|
||
|
metadata:
|
||
|
name: portainer-agent
|
||
|
namespace: portainer
|
||
|
spec:
|
||
|
selector:
|
||
|
matchLabels:
|
||
|
app: portainer-agent
|
||
|
template:
|
||
|
metadata:
|
||
|
labels:
|
||
|
app: portainer-agent
|
||
|
spec:
|
||
|
serviceAccountName: portainer-sa-clusteradmin
|
||
|
containers:
|
||
|
- name: portainer-agent
|
||
|
image: portainer/agent:latest
|
||
|
imagePullPolicy: Always
|
||
|
env:
|
||
|
- name: LOG_LEVEL
|
||
|
value: DEBUG
|
||
|
- name: AGENT_CLUSTER_ADDR
|
||
|
value: "portainer-agent-headless"
|
||
|
- name: KUBERNETES_POD_IP
|
||
|
valueFrom:
|
||
|
fieldRef:
|
||
|
fieldPath: status.podIP
|
||
|
ports:
|
||
|
- containerPort: 9001
|
||
|
protocol: TCP
|