Docker/prod deployment:
- multi-stage Dockerfile (JDK21 build, JRE21 run), docker-compose.prod.yml,
nginx config for lms.our-place.ru, deploy.sh; DEPLOY/IMPORT guides (UI flow)
- Fix Docker 401: LMS_JWT_JWK_SET_URI for academic/progress; forward-headers
Variant distribution (lab page only):
- round-robin by student level, shared random queue across selected groups,
least-used variants, manual pins always preserved; occupied/dup labels
- setup page: single form + one «Сохранить всё», batch level/variant for
selected students (checkboxes)
Grades, defense, materials:
- publication gate + comment lists; defense CSV import (2/3 cols, quotes)
- additional task after defense ("начать заново"); enroll/unenroll students
from group page; temporary-password lock (no navigation until changed) and
persistent "Смена пароля"; forced change once
- chapter page /learn/{c}; header: LMS home, Войти, user -> dashboard,
compact theme toggle; responsive mobile header
- markdown: single newlines are soft breaks; highlight.js with light/dark themes
- lab/content imports ZIP-only (lab.yaml+README+variants/assets,
chapters tree+assets); duplicate lab numbers rejected; variant ordering
and date defaults honored
Fixes:
- 500 on student create (@MapsId set before persist); broken dialogs/JS refs in group page
33 lines
665 B
YAML
33 lines
665 B
YAML
server:
|
||
port: ${SERVER_PORT:8090}
|
||
# За nginx: доверяем X-Forwarded-Proto/Host, чтобы редиректы были https и с верным хостом.
|
||
forward-headers-strategy: framework
|
||
servlet:
|
||
session:
|
||
timeout: 30d
|
||
cookie:
|
||
http-only: true
|
||
same-site: lax
|
||
max-age: 30d
|
||
tracking-modes: cookie
|
||
|
||
spring:
|
||
application:
|
||
name: web
|
||
servlet:
|
||
multipart:
|
||
max-file-size: 30MB
|
||
max-request-size: 120MB
|
||
thymeleaf:
|
||
cache: false
|
||
|
||
lms:
|
||
gateway:
|
||
base-url: ${LMS_GATEWAY_URL:http://localhost:8080}
|
||
|
||
management:
|
||
endpoints:
|
||
web:
|
||
exposure:
|
||
include: health,info
|