Files
petwash/部署脚本修复完成.md
GukSang.Jin 9c66b6cd82
2026-03-03 16:55:02 +08:00

4.7 KiB

部署脚本修复完成

问题说明

deploy.ps1 脚本中包含中文字符,在 PowerShell 中由于编码问题导致解析错误。

解决方案

创建了两个版本的部署脚本:

1. deploy.ps1 (英文版 - 推荐)

  • 纯英文提示信息
  • 无编码问题
  • 兼容性最好
  • 功能完整

使用方法:

.\deploy.ps1

2. deploy-cn.ps1 (中文版)

  • 中文提示信息
  • 更详细的步骤说明
  • 进度显示 [1/6], [2/6] 等
  • 彩色输出

使用方法:

.\deploy-cn.ps1

脚本功能

两个脚本都包含以下功能:

  1. 检查 Docker 是否安装
  2. 检查 Docker Compose 是否安装
  3. 停止旧容器
  4. 构建 Docker 镜像
  5. 启动新容器
  6. 等待服务启动
  7. 显示容器状态
  8. 显示最近日志
  9. 显示访问地址
  10. 显示常用命令

快速开始

方式 1: 使用英文版脚本 (推荐)

# 1. 初始化数据库
mysql -h 101.132.182.216 -P 3306 -u root -p < init-database.sql

# 2. 运行部署脚本
.\deploy.ps1

# 3. 访问服务
# http://localhost:5000/swagger

方式 2: 使用中文版脚本

# 1. 初始化数据库
mysql -h 101.132.182.216 -P 3306 -u root -p < init-database.sql

# 2. 运行部署脚本
.\deploy-cn.ps1

# 3. 访问服务
# http://localhost:5000/swagger

脚本输出示例

deploy.ps1 输出:

======================================
PetWash API Docker Deployment
======================================
Stopping old containers...
Building Docker image...
Starting containers...
Waiting for service to start...
Checking container status...
======================================
Recent logs:
======================================
[日志内容]
======================================
Deployment complete!
API URL: http://localhost:5000
Swagger: http://localhost:5000/swagger
======================================

deploy-cn.ps1 输出:

======================================
PetWash API Docker 部署
======================================

[1/6] 检查 Docker...
  Docker 已安装

[2/6] 检查 Docker Compose...
  Docker Compose 已安装

[3/6] 停止旧容器...
  完成

[4/6] 构建 Docker 镜像...
  镜像构建成功

[5/6] 启动容器...
  容器启动成功

[6/6] 等待服务启动...

容器状态:
[容器状态]

======================================
最近的日志:
======================================
[日志内容]

======================================
部署完成!
======================================

API 地址: http://localhost:5000
Swagger 文档: http://localhost:5000/swagger

常用命令:
  查看实时日志: docker-compose logs -f petwash-api
  停止服务: docker-compose down
  重启服务: docker-compose restart
  查看状态: docker-compose ps

其他可用脚本

check-deployment.ps1

配置验证脚本,部署前检查环境

.\check-deployment.ps1

deploy.sh

Linux/macOS 部署脚本

chmod +x deploy.sh
./deploy.sh

常用命令

# 查看容器状态
docker-compose ps

# 查看实时日志
docker-compose logs -f petwash-api

# 重启服务
docker-compose restart

# 停止服务
docker-compose down

# 重新构建
docker-compose build --no-cache
docker-compose up -d

故障排查

1. Docker 未安装

错误:

ERROR: Docker is not installed

解决: 安装 Docker Desktop

2. 脚本执行策略错误

错误:

无法加载文件,因为在此系统上禁止运行脚本

解决:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

3. 端口冲突

错误:

Port 5000 is already in use

解决: 修改 docker-compose.yml 中的端口映射

文件清单

文件 说明 语言
deploy.ps1 部署脚本 英文 (推荐)
deploy-cn.ps1 部署脚本 中文
deploy.sh 部署脚本 Bash (Linux/macOS)
check-deployment.ps1 配置验证 英文
docker-compose.yml 容器配置 YAML
init-database.sql 数据库初始化 SQL

相关文档

总结

问题已修复 提供两个版本的脚本 功能完全相同 可以正常使用

推荐使用 deploy.ps1 (英文版),兼容性最好!


现在可以开始部署了! 🚀

.\deploy.ps1