modified: serv_nginx/Makefile
modified: serv_nginx/docker-compose.yml modified: serv_nginx/keycloak/Dockerfile modified: serv_nginx/keycloak/keycloak.conf modified: serv_nginx/nginx/nginx-ssl.conf change all for know
This commit is contained in:
+1
-1
@@ -62,4 +62,4 @@ start_kk:
|
||||
re_kk: git stop_kk start_kk
|
||||
|
||||
retart_kk:
|
||||
docker compose down keycloak && docker compose build keycloak --no-cache && docker compsoe up keycloak -d
|
||||
docker compose down keycloak && docker compose build keycloak --no-cache && docker compose up keycloak -d
|
||||
@@ -168,18 +168,14 @@ services:
|
||||
KEYCLOAK_ADMIN: admin
|
||||
KEYCLOAK_ADMIN_PASSWORD: ${KEYCLOAK_ADMIN_PASSWORD:-admin}
|
||||
KC_DB_PASSWORD: ${KEYCLOAK_DB_PASSWORD:-keycloak}
|
||||
# Используем только hostname-url с путем /auth
|
||||
KC_HOSTNAME_URL: https://yalarba.ru/auth
|
||||
# Убрать KC_HOSTNAME_URL - используем конфиг файл
|
||||
KC_HTTP_ENABLED: true
|
||||
KC_HTTP_RELATIVE_PATH: /auth
|
||||
KC_HOSTNAME_STRICT: true
|
||||
KC_HOSTNAME_STRICT_HTTPS: true
|
||||
|
||||
KC_PROXY: edge
|
||||
# или
|
||||
# - KC_PROXY=reencrypt
|
||||
# или
|
||||
#- KC_PROXY=passthrough
|
||||
KC_PROXY: reencrypt
|
||||
# Оптимизация для прода
|
||||
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djava.awt.headless=true"
|
||||
volumes:
|
||||
- keycloak_data:/opt/keycloak/data
|
||||
networks:
|
||||
|
||||
@@ -1,30 +1,27 @@
|
||||
FROM quay.io/keycloak/keycloak:22.0.0 as builder
|
||||
FROM quay.io/keycloak/keycloak:24.0.4 as builder
|
||||
|
||||
# Устанавливаем рабочую директорию
|
||||
WORKDIR /opt/keycloak
|
||||
|
||||
# Копируем конфигурационный файл
|
||||
COPY keycloak.conf /opt/keycloak/conf/keycloak.conf
|
||||
# Включение необходимых фич
|
||||
RUN /opt/keycloak/bin/kc.sh build --features=token-exchange,admin-fine-grained-authz
|
||||
|
||||
# Собираем Keycloak в optimized режиме с PostgreSQL
|
||||
RUN /opt/keycloak/bin/kc.sh build --db=postgres
|
||||
FROM quay.io/keycloak/keycloak:24.0.4
|
||||
|
||||
FROM quay.io/keycloak/keycloak:22.0.0
|
||||
|
||||
# Копируем собранную конфигурацию из builder stage
|
||||
# Копируем собранный билд
|
||||
COPY --from=builder /opt/keycloak/ /opt/keycloak/
|
||||
|
||||
# Устанавливаем рабочую директорию
|
||||
WORKDIR /opt/keycloak
|
||||
|
||||
# Копируем финальный конфигурационный файл
|
||||
COPY keycloak.conf /opt/keycloak/conf/keycloak.conf
|
||||
|
||||
# Меняем владельца файлов
|
||||
USER root
|
||||
# Создаем пользователя для выполнения
|
||||
RUN groupadd -r keycloak && useradd -r -g keycloak keycloak
|
||||
RUN chown -R keycloak:keycloak /opt/keycloak
|
||||
USER keycloak
|
||||
|
||||
# Команда для запуска в optimized режиме
|
||||
ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
|
||||
CMD ["start", "--optimized"]
|
||||
# Копируем конфигурационный файл
|
||||
COPY --chown=keycloak:keycloak keycloak.conf /opt/keycloak/conf/
|
||||
|
||||
# Экспортируем порт
|
||||
EXPOSE 8080
|
||||
|
||||
# Команда запуска
|
||||
ENTRYPOINT ["/opt/keycloak/bin/kc.sh", "start", "--optimized"]
|
||||
@@ -15,15 +15,15 @@ http-enabled=true
|
||||
http-port=8080
|
||||
http-relative-path=/auth
|
||||
|
||||
# Hostname configuration
|
||||
hostname-url=https://yalarba.ru/auth
|
||||
# Hostname configuration - ИСПРАВЛЕНО
|
||||
hostname=https://yalarba.ru
|
||||
hostname-path=/auth
|
||||
hostname-strict=true
|
||||
hostname-strict-https=true
|
||||
hostname-strict-backchannel=false
|
||||
hostname-path=/auth
|
||||
|
||||
# Proxy configuration
|
||||
proxy=x_forwarded
|
||||
# Proxy configuration - ИСПРАВЛЕНО
|
||||
proxy=reencrypt
|
||||
proxy-address-forwarding=true
|
||||
|
||||
# CORS settings
|
||||
@@ -39,4 +39,9 @@ health-enabled=true
|
||||
features=token-exchange,admin-fine-grained-authz
|
||||
|
||||
# Logging
|
||||
log-level=INFO
|
||||
log-level=INFO
|
||||
|
||||
# Дополнительные настройки для прода
|
||||
cache=local
|
||||
cache-stack=kubernetes
|
||||
metrics-enabled=false
|
||||
@@ -22,7 +22,7 @@ server {
|
||||
location / {
|
||||
return 301 https://$host$request_uri;
|
||||
}
|
||||
|
||||
|
||||
location /uploads/ {
|
||||
alias /uploads/;
|
||||
expires 1y;
|
||||
@@ -52,19 +52,22 @@ server {
|
||||
|
||||
# Keycloak integration - исправленная конфигурация
|
||||
location /auth/ {
|
||||
proxy_pass http://keycloak_backend/auth/;
|
||||
proxy_pass http://keycloak_backend;
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Host $host;
|
||||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
|
||||
|
||||
# Убрать trailing slash в proxy_pass
|
||||
proxy_pass http://keycloak_backend;
|
||||
|
||||
# Важные настройки для Keycloak
|
||||
proxy_buffer_size 128k;
|
||||
proxy_buffers 4 256k;
|
||||
proxy_busy_buffers_size 256k;
|
||||
|
||||
|
||||
# Таймауты
|
||||
proxy_connect_timeout 30s;
|
||||
proxy_send_timeout 30s;
|
||||
|
||||
Reference in New Issue
Block a user