#!/bin/bash # ChatRoom 自动部署脚本 # 用法: ./deploy.sh [镜像地址] # 示例: ./deploy.sh # 本地构建部署 # ./deploy.sh registry.cn-hangzhou.aliyuncs.com/xxx/chatroom:latest # 从镜像仓库拉取部署 set -e COMPOSE_FILE="docker-compose.yml" PORT=2779 echo "==========================================" echo " ChatRoom 部署脚本 - 端口 $PORT" echo "==========================================" if [ -n "$1" ]; then # 从远程仓库拉取镜像并部署 export CHATROOM_IMAGE="$1" echo ">>> 拉取镜像: $CHATROOM_IMAGE" docker compose -f "$COMPOSE_FILE" pull app echo ">>> 启动容器..." docker compose -f "$COMPOSE_FILE" up -d --no-build else # 本地构建并部署 echo ">>> 构建并启动..." docker compose -f "$COMPOSE_FILE" up -d --build fi echo "" echo ">>> 部署完成!" echo " 服务地址: http://localhost:$PORT" echo " WebSocket: ws://localhost:$PORT/ws" echo "" echo ">>> 查看日志: docker compose logs -f app" echo ">>> 停止服务: docker compose down" echo "=========================================="