Files
private-ai-platform/ansible/roles/k8s/readme/install-keyclock.md
Hrankin, Aleksandr (contracted) f243f440c3 init
2026-02-19 11:34:13 +00:00

2.4 KiB
Raw Permalink Blame History

helm repo add codecentric https://codecentric.github.io/helm-charts
helm repo update
kubectl create namespace keycloak
vim values-keycloak.yaml

# Какой именно Keycloak ставим
image:
  repository: quay.io/keycloak/keycloak
  # Подставь нужную версию, например ту, которую ты хочешь зафиксировать
  # (пример — 26.0.7, но лучше глянуть актуальные теги на quay.io/keycloak/keycloak)
  tag: "26.0.7"
  pullPolicy: IfNotPresent

replicas: 1

# HTTP-путь, по которому будет доступен Keycloak
http:
  # "/" или "/auth" — на твой вкус, я делаю "/" для простоты
  relativePath: "/"

# Подключение к внешней БД PostgreSQL
database:
  vendor: postgres
  hostname: postgres-postgresql.postgres.svc.cluster.local
  port: 5432
  database: keycloak
  username: keycloak_user
  password: "password"

# Команда запуска Keycloak (рекомендуемый стиль с kc.sh)
command:
  - "/opt/keycloak/bin/kc.sh"
  - "start"
  - "--http-enabled=true"
  - "--http-port=8080"
  - "--hostname-strict=false"
  - "--hostname-strict-https=false"
  - "--proxy=edge"

# Ingress NGINX на keycloak.local
ingress:
  enabled: true
  ingressClassName: "nginx"
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "false"
  rules:
    - host: "keycloak.local"
      paths:
        - path: '{{ tpl .Values.http.relativePath $ | trimSuffix "/" }}/'
          pathType: Prefix
  tls: []  # позже можно включить TLS через cert-manager

# Переменные окружения Keycloak
extraEnv: |
  # Админ и пароль
  - name: KEYCLOAK_ADMIN
    value: admin
  - name: KEYCLOAK_ADMIN_PASSWORD
    value: password

  # Настройки прокси / hostname
  - name: KC_PROXY
    value: edge
  - name: KC_HOSTNAME
    value: "keycloak.local"

  # JGroups discovery через headless-сервис чарта
  - name: JAVA_OPTS_APPEND
    value: >-
      -XX:+UseContainerSupport
      -XX:MaxRAMPercentage=50.0
      -Djava.awt.headless=true
      -Djgroups.dns.query={{ include "keycloak.fullname" . }}-headless



helm install keycloak codecentric/keycloakx \
  --namespace keycloak \
  --values values-keycloak.yaml