55 lines
1.5 KiB
Bash
Executable File
55 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
# Docker容器运行脚本
|
||
|
||
IMAGE_NAME="multi-camera-monitor"
|
||
IMAGE_TAG="latest"
|
||
CONTAINER_NAME="multi-camera-app"
|
||
PORT="5002"
|
||
|
||
echo "🚀 启动多摄像头监控系统Docker容器..."
|
||
|
||
# 检查Docker是否安装
|
||
if ! command -v docker &> /dev/null; then
|
||
echo "❌ 错误: 未找到Docker,请先安装Docker"
|
||
exit 1
|
||
fi
|
||
|
||
# 检查镜像是否存在
|
||
if ! docker images | grep -q "${IMAGE_NAME}"; then
|
||
echo "⚠️ 镜像不存在,请先运行 ./docker-build.sh 构建镜像"
|
||
exit 1
|
||
fi
|
||
|
||
# 停止并删除已存在的容器
|
||
if docker ps -a | grep -q "${CONTAINER_NAME}"; then
|
||
echo "🛑 停止并删除现有容器..."
|
||
docker stop ${CONTAINER_NAME} >/dev/null 2>&1
|
||
docker rm ${CONTAINER_NAME} >/dev/null 2>&1
|
||
fi
|
||
|
||
# 运行容器
|
||
echo "🎬 启动容器: ${CONTAINER_NAME}"
|
||
docker run -d \
|
||
--name ${CONTAINER_NAME} \
|
||
-p ${PORT}:5002 \
|
||
--restart unless-stopped \
|
||
${IMAGE_NAME}:${IMAGE_TAG}
|
||
|
||
if [ $? -eq 0 ]; then
|
||
echo "✅ 容器启动成功!"
|
||
echo ""
|
||
echo "📊 容器状态:"
|
||
docker ps | grep ${CONTAINER_NAME}
|
||
echo ""
|
||
echo "🌐 访问地址: http://localhost:${PORT}"
|
||
echo ""
|
||
echo "📋 常用命令:"
|
||
echo " 查看日志: docker logs -f ${CONTAINER_NAME}"
|
||
echo " 停止容器: docker stop ${CONTAINER_NAME}"
|
||
echo " 重启容器: docker restart ${CONTAINER_NAME}"
|
||
echo " 进入容器: docker exec -it ${CONTAINER_NAME} bash"
|
||
else
|
||
echo "❌ 容器启动失败!"
|
||
exit 1
|
||
fi |