ai-lightrag/deploy.sh

37 lines
867 B
Bash

#!/bin/bash
# 定义变量
IMAGE_NAME="lightrag-service"
CONTAINER_NAME="lightrag-container"
PORT=9600
DATA_DIR="$(pwd)/index_data"
# 确保数据目录存在
mkdir -p "$DATA_DIR"
# 1. 构建镜像
echo "正在构建 Docker 镜像..."
docker build -t $IMAGE_NAME .
# 2. 停止旧容器
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "停止并删除旧容器..."
docker stop $CONTAINER_NAME
docker rm $CONTAINER_NAME
fi
# 3. 启动新容器
echo "启动服务..."
# 注意:使用 --env-file 挂载环境变量
# 使用 -v 挂载数据卷,确保数据持久化
docker run -d \
--name $CONTAINER_NAME \
-p $PORT:$PORT \
--env-file .env \
-v "$DATA_DIR":/app/index_data \
--restart unless-stopped \
$IMAGE_NAME
echo "服务已启动: http://localhost:$PORT"
echo "查看日志: docker logs -f $CONTAINER_NAME"