71 lines
1.7 KiB
Bash
Executable File
71 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Value Investing App - 构建和推送脚本
|
|
# 使用 docker 构建镜像并推送到私有仓库
|
|
|
|
set -e # 遇到错误立即退出
|
|
|
|
# 配置变量
|
|
IMAGE_NAME="bet"
|
|
REGISTRY="192.168.0.115:5000"
|
|
TAG="latest"
|
|
FULL_IMAGE_NAME="${REGISTRY}/${IMAGE_NAME}:${TAG}"
|
|
|
|
echo "========================================="
|
|
echo "Value Investing App 构建和推送脚本"
|
|
echo "========================================="
|
|
|
|
|
|
# 构建镜像
|
|
echo "1. 构建 Docker 镜像..."
|
|
echo " 镜像名称: ${IMAGE_NAME}"
|
|
docker build --platform linux/arm64 -t ${IMAGE_NAME} .
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo " ✅ 镜像构建成功"
|
|
else
|
|
echo " ❌ 镜像构建失败"
|
|
exit 1
|
|
fi
|
|
|
|
# 打标签
|
|
echo "2. 为镜像打标签..."
|
|
echo " 标签: ${FULL_IMAGE_NAME}"
|
|
docker tag ${IMAGE_NAME} ${FULL_IMAGE_NAME}
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo " ✅ 标签添加成功"
|
|
else
|
|
echo " ❌ 标签添加失败"
|
|
exit 1
|
|
fi
|
|
|
|
# 推送到私有仓库
|
|
echo "3. 推送镜像到私有仓库..."
|
|
echo " 仓库地址: ${REGISTRY}"
|
|
docker push ${FULL_IMAGE_NAME}
|
|
|
|
if [ $? -eq 0 ]; then
|
|
echo " ✅ 镜像推送成功"
|
|
else
|
|
echo " ❌ 镜像推送失败"
|
|
exit 1
|
|
fi
|
|
|
|
# 清理本地镜像(可选)
|
|
echo "4. 清理临时镜像..."
|
|
docker rmi ${IMAGE_NAME} || true
|
|
|
|
# 显示最终结果
|
|
echo ""
|
|
echo "========================================="
|
|
echo "🎉 构建和推送完成!"
|
|
echo "========================================="
|
|
echo "镜像地址: ${FULL_IMAGE_NAME}"
|
|
echo ""
|
|
echo "可以使用以下命令运行容器:"
|
|
echo "docker run -d -p 5000:5000 --name value-investing-container ${FULL_IMAGE_NAME}"
|
|
echo ""
|
|
echo "或者在其他机器上拉取镜像:"
|
|
echo "docker pull ${FULL_IMAGE_NAME}"
|
|
echo "=========================================" |