stream-deploy/docker/media/build.sh

47 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
version=latest
# 获取脚本所在目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/../.." && pwd)"
echo "=========================================="
echo "开始构建 ZLMediaKit Docker 镜像"
echo "=========================================="
# 检查 ZLM 目录是否存在
if [ ! -d "${PROJECT_ROOT}/ZLM" ]; then
echo "错误: ZLM 目录不存在: ${PROJECT_ROOT}/ZLM"
exit 1
fi
# 检查 ZLM 源码是否完整
if [ ! -d "${PROJECT_ROOT}/ZLM/3rdpart/ZLToolKit/src" ]; then
echo "错误: ZLM 源码不完整,请确保 3rdpart 目录下的依赖库存在"
exit 1
fi
# 清理旧的 ZLM 目录(如果存在)
if [ -d "${SCRIPT_DIR}/ZLM" ]; then
echo "清理旧的 ZLM 目录..."
rm -rf "${SCRIPT_DIR}/ZLM"
fi
# 复制 ZLM 目录到 media 目录
echo "复制 ZLM 源码到构建目录..."
cp -r "${PROJECT_ROOT}/ZLM" "${SCRIPT_DIR}/ZLM"
echo "开始构建 Docker 镜像..."
docker build -t polaris-media:${version} .
# 构建完成后清理
echo "清理构建目录..."
rm -rf "${SCRIPT_DIR}/ZLM"
echo "=========================================="
echo "构建完成!"
echo "镜像: polaris-media:${version}"
echo "=========================================="