Geo-MLOps 에는 명령줄 도구가 둘 있습니다.

도구어디에 붙나누가 쓰나이럴 때
geo-mlops-adminDB 에 직접 (서버가 꺼져 있어도 됨)플랫폼 운영자계정·역할 응급 복구, DB 재구성, 가중치 미러 채우기
geo-mlops-client (./client)돌고 있는 서버에 HTTP 로모든 사용자로그인, 대용량 데이터셋 업로드, API 호출 스크립트

geo-mlops-admin

앱과 같은 환경변수(GEO_MLOPS_*, 특히 GEO_MLOPS_DATABASE_URL)나 .env 를 읽습니다. 접속 옵션은 따로 없습니다. 서버 저장소 루트의 ./admin 스크립트로 부릅니다(./run geo-mlops-admin … 또는 python -m geo_mlops.admin 과 같습니다).

./admin --help

컨테이너로 설치했다면 앱 컨테이너 안에서 실행합니다(작업 디렉터리 /app).

docker compose exec app ./admin user list

user (계정)

./admin user create [email protected] --admin     # 계정 + 전역 관리자
./admin user create [email protected]               # 비밀번호를 만들어 출력
./admin user create [email protected] --password '<your-secret>'
./admin user list                                 # 계정과 역할 목록
./admin user delete [email protected] --yes         # 영구 삭제

--inactive(비활성으로 생성), --unverified(이메일 미인증으로 생성) 옵션도 있습니다.

admin (전역 관리자)

./admin admin grant  [email protected]
./admin admin revoke [email protected]

화면에서 마지막 전역 관리자를 잃었거나 비밀번호를 모를 때의 응급 복구 수단입니다.

role (테넌트 역할)

./admin role grant  [email protected] DEMO OPERATOR   # 역할 부여·변경
./admin role revoke [email protected] DEMO

역할은 VIEWER, DEVELOPER, OPERATOR, APPROVER, ADMIN 중 하나입니다.

db reset (데이터베이스 재구성)

./admin db reset --seed          # 전부 지우고 마이그레이션으로 다시 만든 뒤 초기 데이터 심기
  • --seed 는 재구성 뒤 부팅 시드(부트스트랩 관리자·테넌트)를 다시 심고, 테넌트 네임스페이스도 만듭니다. 네임스페이스를 건너뛰려면 --no-cluster.
  • 서버 저장소의 ./admin-database-initializedb reset --seed --yes 를 확인 없이 실행하는 스크립트입니다. 개발 환경 전용입니다.

seed-demo (데모 데이터)

./admin seed-demo --tenant DEMO --days 30

부트스트랩 테넌트(또는 --tenant 로 고른 테넌트)의 모든 화면을 데모 데이터로 채웁니다. 이미 있으면 건너뜁니다.

weights (가중치 미러)

DB 없이 오브젝트 스토리지와 카탈로그만 씁니다. 설치 직후 DB 를 준비하기 전에도 돌릴 수 있습니다.

./admin weights list                                  # 카탈로그와 미러 상태
./admin weights warm --framework rf-detr              # 인터넷에서 받아 미러에 저장
./admin weights warm --all
./admin weights push rf-detr-large ./rf-detr-large.pth --framework rf-detr   # 폐쇄망: 가져온 파일 올리기
./admin weights prune                                 # 카탈로그가 안 가리키는 옛 객체 삭제

화면에서 하는 같은 일은 가중치 미러를 보세요.

./client (사용자용 클라이언트)

geo-mlops-client돌고 있는 서버에 붙는 사용자용 도구입니다. 로그인하면 로그인 토큰(JWT)을 ~/.geo-mlops.json(소유자만 읽기 가능)에 저장합니다. 다음 명령부터 이 토큰을 다시 쓰므로 비밀번호를 매번 입력하지 않습니다. 서버 저장소의 ./client 스크립트로 부릅니다.

./client login [email protected] --base-url https://mlops.example.com --tenant DEMO
./client whoami
./client logout
  • 서버 주소는 --base-urlGEO_MLOPS_CLIENT_BASE_URL → 마지막 로그인 주소 → 기본값 http://localhost:10000 순으로 정해집니다.
  • 테넌트는 --tenant CODE, GEO_MLOPS_CLIENT_TENANT, 또는 로그인 때 저장한 기본값을 씁니다.

로그인 없이 쓰는 점검 명령도 있습니다.

./client meta health      # 살아 있나, 버전
./client meta readyz      # DB 연결까지 준비됐나 (문제가 있으면 종료 코드 1)
./client meta metrics     # Prometheus 지표 원문

그 밖의 API 는 <그룹> <동작> 으로 그대로 불립니다(tenants, experiments, models, datasets, settings 등). ./client <그룹> --help 로 동작 목록을 봅니다.

./client models list
./client datasets upload-archive <데이터셋 ID> ~/corpus --chunk-size 64M
./client training-weights upload my-ckpt ./best.pt --framework yolo --model yolo26n

2026-09-21 기준 플랫폼에 맞춰 작성했습니다.

© Geo-MLOps