Установка Keycloak на свой сервер: термины и чек-лист
Подробности, цифры, термины и чек-лист по теме «Установка Keycloak на свой сервер». Страница справочника целиком: Установка Keycloak на сервер.
Коротко о теме
Установка Keycloak в Docker Compose: образ quay.io/keycloak/keycloak 26.8, PostgreSQL, hostname за обратным прокси, первый realm, копии базы и обновление.
Подробности по разделам
Что делает Keycloak и когда без него можно обойтись
Для одного пользователя и пары приложений хватит их собственных паролей и менеджера Vaultwarden. Если нужен другой сервер единого входа со своими потоками входа и современным интерфейсом, посмотрите Authentik.
HTTPS и hostname для Keycloak за обратным прокси
KC_HOSTNAME с полным адресом вместе со схемой https говорит Keycloak, какие ссылки отдавать клиентам. KC_PROXY_HEADERS заставляет доверять заголовкам X-Forwarded от вашего прокси. Если пропустить вторую, вход через приложения может сломаться на этапе перенаправления, а в журнале будут жалобы на неверный redirect URI.
Копии базы и обновление Keycloak без потери пользователей
Обновляйте по одной версии и после дампа Keycloak при первом запуске новой версии сам меняет схему базы, и откат на прежний образ после этого не всегда возможен. Прочитайте руководство по обновлению для вашей и целевой версии, сделайте дамп и только тогда меняйте тег образа.
Ключевые цифры
- Внутри контейнера 8080 для HTTP и 8443 для HTTPS.
- В быстром старте консоль открывается на порту 8080, в работе наружу выставляют только 443 через обратный прокси.
Термины на странице
- PostgreSQL
- PostgreSQL это база данных для приложений с большими объёмами и сложными запросами.
- Nextcloud
- Nextcloud это облачное хранилище файлов, которое ставят на свой сервер.
- n8n
- n8n это программа для автоматизации: связывает сервисы сценариями без программирования.
- Apache
- Apache это веб-сервер. На хостинге с ним работают файлы .htaccess.
- Certbot
- Certbot это программа, которая получает и продлевает сертификаты Let's Encrypt на сервере.
- Nginx
- Nginx это веб-сервер и обратный прокси. Его часто ставят перед приложением, чтобы раздавать статику и держать HTTPS.
- S3
- S3 это объектное хранилище файлов с доступом по API, совместимому с Amazon S3.
- Self-hosted
- Self-hosted значит, что программа работает на вашем сервере, а данные остаются у вас.
Что проверить
- Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
- Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
- Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
- Храните данные контейнеров в томах.
- Закрепляйте версии образов, а не latest.
- Ограничьте ресурсы контейнеров, чтобы один не съел весь сервер.