anxin-ruoyi/docker/frontend/build.sh
2026-01-05 01:46:20 +08:00

67 lines
1.4 KiB
Bash

#!/bin/bash
# 前端容器构建脚本
# 用于构建若依 Vue3 前端 Docker 镜像
set -e
# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# 日志函数
log_info() {
echo -e "${GREEN}[INFO]${NC} $1"
}
log_warn() {
echo -e "${YELLOW}[WARN]${NC} $1"
}
log_error() {
echo -e "${RED}[ERROR]${NC} $1"
}
# 检查 Docker 是否安装
if ! command -v docker &> /dev/null; then
log_error "Docker 未安装或不在 PATH 中"
exit 1
fi
# 设置变量
IMAGE_NAME="anxin-frontend"
TAG="${1:-latest}"
DOCKERFILE_PATH="docker/frontend/Dockerfile"
log_info "开始构建前端 Docker 镜像..."
log_info "镜像名称: ${IMAGE_NAME}:${TAG}"
log_info "Dockerfile 路径: ${DOCKERFILE_PATH}"
# 检查 Dockerfile 是否存在
if [ ! -f "${DOCKERFILE_PATH}" ]; then
log_error "Dockerfile 不存在: ${DOCKERFILE_PATH}"
exit 1
fi
# 检查前端源码目录是否存在
if [ ! -d "RuoYi-Vue3" ]; then
log_error "前端源码目录不存在: RuoYi-Vue3"
exit 1
fi
# 构建镜像
log_info "正在构建镜像..."
if docker build -t "${IMAGE_NAME}:${TAG}" -f "${DOCKERFILE_PATH}" .; then
log_info "镜像构建成功: ${IMAGE_NAME}:${TAG}"
# 显示镜像信息
log_info "镜像信息:"
docker images "${IMAGE_NAME}:${TAG}"
else
log_error "镜像构建失败"
exit 1
fi
log_info "前端镜像构建完成!"