diff --git a/docker-compose.simple.yaml b/docker-compose.simple.yaml index 0b12b37..f0dee37 100644 --- a/docker-compose.simple.yaml +++ b/docker-compose.simple.yaml @@ -1,5 +1,3 @@ -version: '3.8' - services: postgres: image: postgres:15-alpine @@ -10,7 +8,7 @@ services: POSTGRES_USER: mixvideo_user POSTGRES_PASSWORD: mixvideo_password ports: - - "5432:5432" + - "5433:5432" # 使用不同的外部端口 volumes: - postgres_data:/var/lib/postgresql/data diff --git a/docker-compose.test.yaml b/docker-compose.test.yaml new file mode 100644 index 0000000..0687a33 --- /dev/null +++ b/docker-compose.test.yaml @@ -0,0 +1,17 @@ +services: + postgres: + image: postgres:15-alpine + container_name: mixvideo_postgres_test + restart: unless-stopped + environment: + POSTGRES_PASSWORD: mixvideo_password + POSTGRES_DB: mixvideo + POSTGRES_USER: mixvideo_user + ports: + - "5433:5432" + volumes: + - postgres_test_data:/var/lib/postgresql/data + +volumes: + postgres_test_data: + driver: local diff --git a/docker-compose.yaml b/docker-compose.yaml index a2bdb8b..612222a 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,5 +1,3 @@ -version: '3.8' - services: postgres: image: postgres:15-alpine @@ -11,7 +9,7 @@ services: POSTGRES_PASSWORD: mixvideo_password POSTGRES_INITDB_ARGS: "--encoding=UTF-8 --lc-collate=C --lc-ctype=C" ports: - - "5432:5432" + - "5433:5432" volumes: - postgres_data:/var/lib/postgresql/data - ./init-scripts:/docker-entrypoint-initdb.d diff --git a/reset-postgres.bat b/reset-postgres.bat new file mode 100644 index 0000000..e7c7f95 --- /dev/null +++ b/reset-postgres.bat @@ -0,0 +1,50 @@ +@echo off +echo PostgreSQL Docker 重置脚本 +echo =========================== + +echo. +echo 1. 停止所有相关容器... +docker-compose down + +echo. +echo 2. 删除相关容器(如果存在)... +docker rm -f mixvideo_postgres mixvideo_pgadmin 2>nul + +echo. +echo 3. 删除相关镜像缓存... +docker system prune -f + +echo. +echo 4. 删除数据卷(这会清除所有数据)... +docker volume rm mixvideo_postgres_data mixvideo_pgadmin_data 2>nul + +echo. +echo 5. 重新拉取镜像... +docker-compose pull + +echo. +echo 6. 启动 PostgreSQL 服务... +docker-compose up -d postgres + +echo. +echo 7. 等待服务启动(30秒)... +timeout /t 30 + +echo. +echo 8. 检查服务状态... +docker-compose ps + +echo. +echo 9. 查看日志... +docker-compose logs postgres + +echo. +echo 重置完成! +echo 连接信息: +echo 主机: localhost +echo 端口: 5433 +echo 数据库: mixvideo +echo 用户: mixvideo_user +echo 密码: mixvideo_password +echo. +pause diff --git a/troubleshoot-postgres.bat b/troubleshoot-postgres.bat new file mode 100644 index 0000000..c47814c --- /dev/null +++ b/troubleshoot-postgres.bat @@ -0,0 +1,41 @@ +@echo off +echo PostgreSQL Docker 故障排除脚本 +echo ================================ + +echo. +echo 1. 停止现有服务... +docker-compose down + +echo. +echo 2. 清理容器和网络... +docker system prune -f + +echo. +echo 3. 检查端口占用... +netstat -ano | findstr :5432 +netstat -ano | findstr :5433 + +echo. +echo 4. 检查 Docker 状态... +docker version + +echo. +echo 5. 重新启动服务(使用端口 5433)... +docker-compose up -d + +echo. +echo 6. 等待服务启动... +timeout /t 10 + +echo. +echo 7. 检查服务状态... +docker-compose ps + +echo. +echo 8. 查看日志... +docker-compose logs postgres + +echo. +echo 故障排除完成! +echo 如果仍有问题,请检查上面的日志输出。 +pause