Files
k3s/k8s-guacamole
2025-04-27 00:26:25 +00:00
..
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00
2025-04-27 00:26:25 +00:00

Manifiestos para Guacamole

Este repositorio contiene los manifiestos necesarios para desplegar Apache Guacamole en un clúster Kubernetes. El despliegue incluye:

  • Guacamole + Guacd (como contenedores en el mismo Deployment)
  • MySQL 5.7 como backend de autenticación
  • Ingreso expuesto mediante Ingress y cert-manager
  • Inyección automatizada del esquema full-schema.sql usando un initContainer y un ConfigMap

Apache Guacamole es un cliente remoto sin necesidad de plugins, accesible desde navegador, compatible con protocolos como VNC, RDP y SSH.


Despliegue

Aplica todos los manifiestos usando kustomize:

kubectl apply -k .

Usuario/pass por defecto: guacadmin/guacadmin

Reinyectar full-schema.sql (por si no sale el configmap)

kubectl cp full-schema.sql -n guacamole $(kubectl get pod -n guacamole -l app=mysql -o jsonpath="{.items[0].metadata.name}"):/full-schema.sql
kubectl exec -n guacamole deploy/mysql -- bash -c "mysql -u root -pguacroot guacamole_db < /full-schema.sql"

Comprobación

Para verificar que el usuario guacadmin ha sido creado correctamente:

kubectl exec -n guacamole deploy/mysql -it -- \
mysql -uguacuser -pguacpass -D guacamole_db -e \
"SELECT name FROM guacamole_entity WHERE type='USER';"