67 lines
1.4 KiB
Bash
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 "前端镜像构建完成!" |