Files
TK-BOM-Project/scripts/docker-run.sh
Hyungi Ahn 83b90ef05c
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
feat: 자재 관리 페이지 대규모 개선
- 파이프 수량 계산 로직 수정 (단관 개수가 아닌 실제 길이 기반 계산)
- UI 전면 개편 (DevonThink 스타일의 간결하고 세련된 디자인)
- 자재별 그룹핑 로직 개선:
  * 플랜지: 동일 사양별 그룹핑, WN 스케줄 표시, ORIFICE 풀네임 표시
  * 피팅: 상세 타입 표시 (니플 길이, 엘보 각도/연결, 티 타입, 리듀서 타입 등)
  * 밸브: 동일 사양별 그룹핑, 타입/연결방식/압력 표시
  * 볼트: 크기/재질/길이별 그룹핑 (8SET → 개별 집계)
  * 가스켓: 동일 사양별 그룹핑, 재질/상세내역/두께 분리 표시
  * UNKNOWN: 원본 설명 전체 표시, 동일 항목 그룹핑
- 전체 카테고리 버튼 제거 (표시 복잡도 감소)
- 카테고리별 동적 컬럼 헤더 및 레이아웃 적용
2025-09-09 09:24:45 +09:00

140 lines
4.6 KiB
Bash
Executable File

#!/bin/bash
# TK-MP-Project Docker 실행 스크립트
# 환경별로 적절한 Docker Compose 설정을 사용하여 실행
set -e
# 색상 정의
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
# 도움말 함수
show_help() {
echo -e "${BLUE}TK-MP-Project Docker 실행 스크립트${NC}"
echo ""
echo "사용법: $0 [환경] [명령]"
echo ""
echo "환경:"
echo " dev 개발 환경 (기본값)"
echo " prod 프로덕션 환경"
echo " synology 시놀로지 NAS 환경"
echo ""
echo "명령:"
echo " up 서비스 시작 (기본값)"
echo " down 서비스 중지"
echo " restart 서비스 재시작"
echo " logs 로그 확인"
echo " build 이미지 다시 빌드"
echo " status 서비스 상태 확인"
echo ""
echo "예시:"
echo " $0 # 개발 환경으로 시작"
echo " $0 dev up # 개발 환경으로 시작"
echo " $0 prod up # 프로덕션 환경으로 시작"
echo " $0 synology up # 시놀로지 환경으로 시작"
echo " $0 dev logs # 개발 환경 로그 확인"
echo " $0 dev down # 개발 환경 중지"
}
# 환경 설정
ENVIRONMENT=${1:-dev}
COMMAND=${2:-up}
# 환경별 Docker Compose 파일 설정
case $ENVIRONMENT in
dev|development)
COMPOSE_FILES="-f docker-compose.yml -f docker-compose.override.yml"
ENV_NAME="개발"
;;
prod|production)
COMPOSE_FILES="-f docker-compose.yml -f docker-compose.prod.yml"
ENV_NAME="프로덕션"
;;
synology|nas)
COMPOSE_FILES="-f docker-compose.yml -f docker-compose.synology.yml"
ENV_NAME="시놀로지"
;;
help|-h|--help)
show_help
exit 0
;;
*)
echo -e "${RED}❌ 알 수 없는 환경: $ENVIRONMENT${NC}"
echo "사용 가능한 환경: dev, prod, synology"
exit 1
;;
esac
# .env 파일 확인
if [ ! -f .env ]; then
echo -e "${YELLOW}⚠️ .env 파일이 없습니다. env.example을 복사하여 .env 파일을 생성합니다.${NC}"
cp env.example .env
echo -e "${GREEN}✅ .env 파일이 생성되었습니다. 필요시 설정을 수정하세요.${NC}"
fi
# 명령 실행
echo -e "${BLUE}🐳 TK-MP-Project ${ENV_NAME} 환경 ${COMMAND} 실행${NC}"
echo "Docker Compose 파일: $COMPOSE_FILES"
echo ""
case $COMMAND in
up|start)
echo -e "${GREEN}🚀 서비스를 시작합니다...${NC}"
docker-compose $COMPOSE_FILES up -d
echo ""
echo -e "${GREEN}✅ 서비스가 시작되었습니다!${NC}"
echo ""
echo "접속 주소:"
case $ENVIRONMENT in
dev|development)
echo " - 프론트엔드: http://localhost:13000"
echo " - 백엔드 API: http://localhost:18000"
echo " - API 문서: http://localhost:18000/docs"
echo " - pgAdmin: http://localhost:5050"
;;
prod|production)
echo " - 웹사이트: http://localhost"
echo " - HTTPS: https://localhost (SSL 설정 시)"
;;
synology|nas)
echo " - 프론트엔드: http://localhost:10173"
echo " - 백엔드 API: http://localhost:10080"
echo " - API 문서: http://localhost:10080/docs"
echo " - pgAdmin: http://localhost:15050"
;;
esac
;;
down|stop)
echo -e "${YELLOW}🛑 서비스를 중지합니다...${NC}"
docker-compose $COMPOSE_FILES down
echo -e "${GREEN}✅ 서비스가 중지되었습니다.${NC}"
;;
restart)
echo -e "${YELLOW}🔄 서비스를 재시작합니다...${NC}"
docker-compose $COMPOSE_FILES restart
echo -e "${GREEN}✅ 서비스가 재시작되었습니다.${NC}"
;;
logs)
echo -e "${BLUE}📋 로그를 확인합니다...${NC}"
docker-compose $COMPOSE_FILES logs -f
;;
build)
echo -e "${BLUE}🔨 이미지를 다시 빌드합니다...${NC}"
docker-compose $COMPOSE_FILES build --no-cache
echo -e "${GREEN}✅ 빌드가 완료되었습니다.${NC}"
;;
status|ps)
echo -e "${BLUE}📊 서비스 상태를 확인합니다...${NC}"
docker-compose $COMPOSE_FILES ps
;;
*)
echo -e "${RED}❌ 알 수 없는 명령: $COMMAND${NC}"
echo "사용 가능한 명령: up, down, restart, logs, build, status"
exit 1
;;
esac