Your content here
portainer
kubectl
.kubectl create namespace portainer
kubectl create secret generic portainer-db --namespace portainer \
--from-literal="MYSQL_ROOT_PASSWORD=<password>" \
--from-literal="MYSQL_DATABASE=portainer" \
--from-literal="MYSQL_USER=portainer" \
--from-literal="MYSQL_PASSWORD=<password>"
Remplacez <password>
par un mot de passe sécurisé de votre choix.
portainer.yaml
avec le contenu suivant :apiVersion: apps/v1
kind: Deployment
metadata:
name: portainer
namespace: portainer
spec:
selector:
matchLabels:
app: portainer
replicas: 1
template:
metadata:
labels:
app: portainer
spec:
containers:
- name: portainer
image: portainer/portainer-ce:latest
ports:
- containerPort: 9000
env:
- name: DATABASE_URL
value: mysql://portainer:<password>@portainer-db:3306/portainer?sslmode=disable
- name: ADMIN_PASSWORD
value: <password>
- name: EDGE_AGENT_PORT
value: "8000"
Remplacez <password>
par un mot de passe sécurisé de votre choix.
kubectl apply -f portainer.yaml
portainer-service.yaml
avec le contenu suivant :apiVersion: v1
kind: Service
metadata:
name: portainer
namespace: portainer
spec:
selector:
app: portainer
ports:
- name: http
port: 9000
targetPort: 9000
type: LoadBalancer
kubectl apply -f portainer-service.yaml
kubectl get services -n portainer
http://<adresse_ip>:9000
).portainer.yaml
.Créez un fichier portainer-rbac.yaml
avec le contenu suivant :
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: portainer
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: default
namespace: portainer
Appliquez la configuration en utilisant la commande suivante :
kubectl apply -f portainer-rbac.yaml
Et voilà, vous avez maintenant installé et configuré Portainer sur votre cluster K3S !