MLOps Central Platform 은 설정 파일이 없어도 실행. 개발 편의를 위해 서명 키와 비밀번호에 기본값이 있음. 운영 설치에서 이 기본값을 그대로 두면 누구나 세션 위조나 관리자 로그인 가능. /etc/geo-mlops/app.env 가 없거나 이름이 변경되어도 Compose 는 경고 없이 기본값으로 실행. 설치 직후와 배포 시마다 시스템 진단 화면으로 확인 필요.

반드시 바꿀 다섯 가지

설정 (GEO_MLOPS_ 뒤)기본값 그대로면조치
AUTH_SECRETCRITICAL: 세션 JWT 와 비밀번호 재설정 토큰을 누구나 위조 가능openssl rand -hex 32 값으로 교체
EDGE_TOKEN_PEPPERCRITICAL: 엣지·MLflow·레지스트리 토큰 해시가 모두 이 값을 사용openssl rand -hex 32 값으로 교체 (AUTH_SECRET 과 다른 값)
RBAC_BOOTSTRAP_ADMIN_PASSWORDCRITICAL: 첫 관리자 비밀번호가 누구나 아는 값강한 비밀번호로 바꾸거나, 첫 로그인 뒤 비밀번호를 바꾸고 이 값을 비움
ALERTMANAGER_WEBHOOK_TOKENWARNING: 경보 웹훅이 503 으로 차단되어 경보가 앱에 전달되지 않음(값을 설정해야 허용됨)난수로 설정하고 monitoring/alertmanager.yml 헤더에 같은 값
AUTH_COOKIE_SECURE기본 true. false 로 설정하면 WARNING. 세션 쿠키가 평문 HTTP 로도 전송.HTTPS 로 접속한다면 true 유지

설정 방법은 Docker Compose 로 설치의 app.env 예시 참고. 수정 후 앱 컨테이너를 다시 생성해야 새 값을 읽음.

docker compose -f /opt/geo-mlops/docker-compose.yml up -d app

부트스트랩 관리자 비밀번호

부트스트랩 관리자는 계정이 없을 때 한 번만 RBAC_BOOTSTRAP_ADMIN_PASSWORD 로 생성. 그 뒤로는 이 값을 바꿔도 계정 비밀번호는 변경되지 않음. 다음 순서로 진행.

  1. 첫 기동 전에 RBAC_BOOTSTRAP_ADMIN_PASSWORD 에 임시 비밀번호를 입력하고 기동.
  2. 그 계정으로 로그인해 오른쪽 위 아바타 메뉴 → 계정 설정 → 비밀번호 변경에서 실제로 사용할 비밀번호로 변경.
  3. app.env 에서 RBAC_BOOTSTRAP_ADMIN_PASSWORD= 로 비우고 앱 컨테이너 재생성. 이후 이 값은 아무 계정도 만들지 않고, 진단 경고도 사라짐.

RBAC_BOOTSTRAP_ADMIN_EMAIL 의 계정은 앱 기동 시마다 전역 관리자 권한을 다시 부여받음. 이 계정의 전역 관리자 권한을 회수해도(geo-mlops-admin admin revoke) 재시작하면 다시 부여. 권한을 영구히 회수하려면 이 값도 비움.

비밀번호 분실 시 서버에서 관리 CLI 로 새 관리자 생성.

docker exec -it geo-mlops-app ./run geo-mlops-admin user create [email protected] --admin
# --password 를 지정하지 않으면 무작위 비밀번호를 생성해 출력

진단 화면의 기타 점검 항목

설정판정뜻
RBAC_BOOTSTRAP_ROLE_PASSWORDWARNING역할별 데모 계정이 기본 비밀번호로 생성. 운영 환경에서는 비워서 비활성화.
CORS_ALLOW_ORIGINS 가 * (기본값)WARNING자격 증명(쿠키)과 와일드카드를 함께 사용하는 조합. 기본값이므로 처음 설치하면 표시. 웹 화면이 다른 도메인이면 그 주소를 입력하고, 같은 도메인이면 값을 비워 CORS 비활성화.
MLFLOW_REQUIRE_AUTH=falseCRITICAL/mlflow 에 로그인 없이 접근 가능. 기본값 true 유지 필요.
MOCK_DATAOPS_ENABLED=trueWARNING개발용 가짜 DataOps 서버. 운영 환경에서는 비활성화(기본 비활성화).

시스템 진단 화면으로 확인하기

전역 관리자 전역 관리자만 열람 가능. 설정값 자체는 화면에 표시되지 않고 "기본값과 같은가" 만 표시. 테넌트가 하나도 없으면 웹 화면이 열리지 않음. 먼저 첫 로그인과 초기 설정의 방법으로 첫 테넌트 생성.

  1. 전역 관리자로 로그인해 오른쪽 위 아바타 메뉴에서 시스템 콘솔 선택. 시스템 진단 카드에 "진단 주의 필요" 가 표시되어 있으면 조치할 항목이 있다는 뜻.

    시스템 콘솔: 아바타 메뉴의 시스템 콘솔 항목으로 진입
  2. 시스템 진단 선택. 맨 위 "배포 정보" 에서 현재 실행 중인 백엔드·프론트엔드의 커밋을, "의존 컴포넌트" 에서 Postgres·오브젝트 저장소·Kubernetes·MLflow 등의 연결 상태 확인.

    시스템 진단: 배포 정보·설정 위생·의존 컴포넌트
  3. "설정 위생" 에서 CRITICAL 이 하나도 남지 않을 때까지 위 표대로 수정. 각 항목에 변경할 환경변수 이름 표시.

    설정 위생: 기본값 그대로인 서명 키·pepper·비밀번호의 CRITICAL 표시

위 그림은 기본값으로 실행한 설치의 화면. 서명 키·pepper·관리자 비밀번호가 CRITICAL 로 표시되고, 이것들이 남아 있는 한 전체 판정은 연결이 모두 정상이어도 "주의 필요" 에서 변경되지 않음.

다음: 첫 로그인과 초기 설정

2026-10-02 기준 플랫폼으로 작성

© MLOps Central Platform