Files
invyone/scripts/start/invyone-start-docker-all.command
T
gbpark 68f85f3736 회사 관리 기능 확장 + 테넌트/비번 보안 하드닝
- 첫 로그인 비번 강제 변경 (RUN_082): FORCE_PASSWORD_CHANGE 컬럼,
  ForcePasswordChangeGuardFilter, /auth/change-password API + 페이지
- 테넌트 일관성 가드: TenantConsistencyGuardFilter 로 JWT.company_code
  ↔ 서브도메인 company_code 대조, CompanyResolver 가 (db_name, company_code)
  동시 반환
- 회사 관리 확장 (RUN_083 audit log, RUN_084 lifecycle 컬럼):
  CompanyAdmin/Members/Templates/Lifecycle/AuditLog 서비스 +
  CompanyMgmtController + SuperAdminGuard
- 회사 관리 UI: CompanyAccordionRow 탭화 + 모달 4종
  (AdminInfo/Deactivate/Delete/RecopyTemplates) + AuditLogDrawer + csvExport
- 프로비저닝 마법사: force_password_change 토글 반영
- 프론트 인증: storage 이벤트 멀티탭 동기화, 403 errorCode
  (PASSWORD_CHANGE_REQUIRED / CROSS_TENANT_REJECTED / TENANT_NOT_RESOLVED)
  전역 리다이렉트
- 기타: StartupSchemaMigrator, OS별 도커 기동 스크립트, CLAUDE.md 트래킹

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 00:36:05 +09:00

49 lines
1.7 KiB
Bash

#!/usr/bin/env bash
# invyone 개발용 도커 컨테이너 기동 (macOS)
# 사용법: Finder 에서 더블클릭 또는 터미널에서 ./invyone-start-docker-all.command
# 실행권한 필요 시: chmod +x invyone-start-docker-all.command
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
COMPOSE_FILE="$PROJECT_ROOT/docker/dev/docker-compose.invyone.yml"
cd "$PROJECT_ROOT"
if ! command -v docker >/dev/null 2>&1; then
echo "[invyone] docker 가 설치되어있지 않습니다. Docker Desktop 설치 후 다시 실행해주세요."
read -n 1 -s -r -p "아무 키나 눌러 종료"
exit 1
fi
if ! docker info >/dev/null 2>&1; then
echo "[invyone] docker daemon 이 실행 중이지 않습니다. Docker Desktop 을 실행해주세요."
read -n 1 -s -r -p "아무 키나 눌러 종료"
exit 1
fi
if [ ! -f "$COMPOSE_FILE" ]; then
echo "[invyone] compose 파일을 찾을 수 없음: $COMPOSE_FILE"
read -n 1 -s -r -p "아무 키나 눌러 종료"
exit 1
fi
echo "[invyone] 도커 컨테이너 기동 중..."
docker compose -f "$COMPOSE_FILE" up -d
echo ""
echo "[invyone] 컨테이너 상태:"
docker compose -f "$COMPOSE_FILE" ps
echo ""
echo "[invyone] 접속 URL:"
echo " Frontend: http://localhost:9772"
echo " Backend: http://localhost:8083/api"
echo " 테넌트: http://<subdomain>.localhost:9772 (예: http://test01.localhost:9772)"
echo ""
echo "[invyone] 로그 보기: docker compose -f docker/dev/docker-compose.invyone.yml logs -f"
echo "[invyone] 컨테이너 내리기: docker compose -f docker/dev/docker-compose.invyone.yml down"
echo ""
read -n 1 -s -r -p "아무 키나 눌러 종료"