feat: add build-sandbox.sh for sandbox image building
This commit is contained in:
parent
ace1858452
commit
c957b208e2
49
build-sandbox.sh
Executable file
49
build-sandbox.sh
Executable file
@ -0,0 +1,49 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# galaxis-sandbox 이미지 빌드 스크립트
|
||||||
|
# Usage: ./build-sandbox.sh [--dry-run]
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
cd "$SCRIPT_DIR"
|
||||||
|
|
||||||
|
DRY_RUN=false
|
||||||
|
if [[ "${1:-}" == "--dry-run" ]]; then
|
||||||
|
DRY_RUN=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
IMAGE_NAME="galaxis-sandbox:latest"
|
||||||
|
DOCKERFILE="Dockerfile.sandbox"
|
||||||
|
|
||||||
|
# 색상
|
||||||
|
RED='\033[0;31m'
|
||||||
|
GREEN='\033[0;32m'
|
||||||
|
NC='\033[0m'
|
||||||
|
|
||||||
|
info() { echo -e "${GREEN}[INFO]${NC} $*"; }
|
||||||
|
error() { echo -e "${RED}[ERROR]${NC} $*"; }
|
||||||
|
|
||||||
|
# Docker 설치 확인
|
||||||
|
if ! command -v docker &>/dev/null; then
|
||||||
|
error "Docker가 설치되어 있지 않습니다."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Dockerfile.sandbox 존재 확인
|
||||||
|
if [[ ! -f "$DOCKERFILE" ]]; then
|
||||||
|
error "${DOCKERFILE}이 없습니다."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$DRY_RUN" == true ]]; then
|
||||||
|
echo "[DRY-RUN] 실행될 명령:"
|
||||||
|
echo " docker build -f ${DOCKERFILE} -t ${IMAGE_NAME} ."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
info "${IMAGE_NAME} 이미지 빌드 중..."
|
||||||
|
docker build -f "$DOCKERFILE" -t "$IMAGE_NAME" .
|
||||||
|
|
||||||
|
# 이미지 크기 출력
|
||||||
|
SIZE=$(docker image inspect "$IMAGE_NAME" --format='{{.Size}}' | awk '{printf "%.0f", $1/1024/1024}')
|
||||||
|
info "빌드 완료! 이미지 크기: ${SIZE}MB"
|
||||||
Loading…
x
Reference in New Issue
Block a user