修改配置

This commit is contained in:
vet
2026-04-13 21:32:13 +07:00
parent 077fbb92f9
commit 1654d5f7b6
3 changed files with 22 additions and 14 deletions

View File

@@ -42,8 +42,8 @@ MONGO_HOST=47.237.103.4
MONGO_PORT=27017 MONGO_PORT=27017
MONGO_USERNAME=minio_pC5wMB MONGO_USERNAME=minio_pC5wMB
MONGO_PASSWORD=rI57PJsJhnz_qlRkfnTa0RPT MONGO_PASSWORD=rI57PJsJhnz_qlRkfnTa0RPT
MONGO_AUTHSOURCE=openim_v3 MONGO_AUTHSOURCE=admin # 连接 URI 中 authSource=…,须与创建该用户时所在库一致
MONGO_DATABASE=openim_v3 # open-im-server / chat 使用 MONGO_DATABASE=openim_v3 # open-im-server / chat 业务库名
BUILD_MONGO_DATABASE=build # build-server 使用 BUILD_MONGO_DATABASE=build # build-server 使用
# ── Amazon S3 — open-im-serverIM 聊天文件存储,必填)────────────────────── # ── Amazon S3 — open-im-serverIM 聊天文件存储,必填)──────────────────────

View File

@@ -144,8 +144,8 @@ MONGO_HOST=47.237.103.4
MONGO_PORT=27017 MONGO_PORT=27017
MONGO_USERNAME=minio_pC5wMB MONGO_USERNAME=minio_pC5wMB
MONGO_PASSWORD=rI57PJsJhnz_qlRkfnTa0RPT MONGO_PASSWORD=rI57PJsJhnz_qlRkfnTa0RPT
MONGO_AUTHSOURCE=openim_v3 MONGO_AUTHSOURCE=admin # 认证库(常见 admin须与 MongoDB 用户实际创建所在库一致
MONGO_DATABASE=openim_v3 MONGO_DATABASE=openim_v3 # 业务数据所在库
BUILD_MONGO_DATABASE=build BUILD_MONGO_DATABASE=build
# ══ Amazon S3 ══════════════════════════════════════════════════ # ══ Amazon S3 ══════════════════════════════════════════════════
@@ -345,7 +345,7 @@ cd pc && rm -rf node_modules && yarn install
| 项目 | 说明 | | 项目 | 说明 |
|------|------| |------|------|
| **完整校验** | 安装 **mongosh** 可测认证与库访问;安装 **AWS CLI**(命令 `aws`)可列桶与读写探测。 | | **完整校验** | **mongosh** 可测 MongoDBS3 用 **`aws s3api head-bucket`** 判断访问,成功后再 `s3 ls` 仅作预览(避免旧版 `ls \| head` 因管道 SIGPIPE 误判失败)。 |
| **未安装工具时** | MongoDB 可用 **nc** 仅测端口连通S3 会跳过并打印手动验证命令。 | | **未安装工具时** | MongoDB 可用 **nc** 仅测端口连通S3 会跳过并打印手动验证命令。 |
| **安装提示** | 脚本按系统给出命令macOS 为 `brew`Amazon/RHEL 为 `dnf`/`yum`),不会在 Linux 上误导为 `brew`。 | | **安装提示** | 脚本按系统给出命令macOS 为 `brew`Amazon/RHEL 为 `dnf`/`yum`),不会在 Linux 上误导为 `brew`。 |
| **Ubuntu/Debian 与 mongosh** | 默认 apt **没有** `mongodb-mongosh` 包(`Unable to locate package` 属正常)。需 [MongoDB 官方文档](https://www.mongodb.com/docs/mongodb-shell/install/) 添加 apt 源后再安装,或使用 `snap install mongosh`。 | | **Ubuntu/Debian 与 mongosh** | 默认 apt **没有** `mongodb-mongosh` 包(`Unable to locate package` 属正常)。需 [MongoDB 官方文档](https://www.mongodb.com/docs/mongodb-shell/install/) 添加 apt 源后再安装,或使用 `snap install mongosh`。 |

View File

@@ -184,7 +184,7 @@ check_mongo() {
2>/dev/null; then 2>/dev/null; then
success "MongoDB 连接正常 ✓" success "MongoDB 连接正常 ✓"
else else
error "MongoDB 连接失败!请检查 .env.local 中的配置" error "MongoDB 连接失败!请检查 .env.deploy-test 中的配置"
echo "" echo ""
echo " 排查步骤:" echo " 排查步骤:"
echo " 1. 确认 MongoDB 服务器 ${MONGO_HOST} 可从本机访问" echo " 1. 确认 MongoDB 服务器 ${MONGO_HOST} 可从本机访问"
@@ -238,7 +238,7 @@ _check_s3_bucket() {
echo "" echo ""
if [[ "${key_id}" == "YOUR_"* || -z "${key_id}" ]]; then if [[ "${key_id}" == "YOUR_"* || -z "${key_id}" ]]; then
error "S3 AccessKeyID 未配置,请编辑 .env.local" error "S3 AccessKeyID 未配置,请编辑 .env.deploy-test"
return 1 return 1
fi fi
@@ -247,20 +247,28 @@ _check_s3_bucket() {
local endpoint_arg="" local endpoint_arg=""
[[ -n "$endpoint" ]] && endpoint_arg="--endpoint-url $endpoint" [[ -n "$endpoint" ]] && endpoint_arg="--endpoint-url $endpoint"
local result rc=0 # 用 head-bucket 判成功/失败,避免 `aws s3 ls | head` 因 SIGPIPE 误判失败
result=$( local hb_err rc=0
hb_err=$(
AWS_ACCESS_KEY_ID="$key_id" \ AWS_ACCESS_KEY_ID="$key_id" \
AWS_SECRET_ACCESS_KEY="$secret_key" \ AWS_SECRET_ACCESS_KEY="$secret_key" \
AWS_DEFAULT_REGION="$region" \ AWS_DEFAULT_REGION="$region" \
aws s3 ls "s3://${bucket}" $endpoint_arg 2>&1 | head -5 aws s3api head-bucket --bucket "$bucket" $endpoint_arg 2>&1
) || rc=$? ) || rc=$?
if [[ $rc -eq 0 ]]; then if [[ $rc -eq 0 ]]; then
success "S3 Bucket 可访问 ✓" success "S3 Bucket 可访问 ✓HeadBucket"
[[ -n "$result" ]] && echo "$result" | sed 's/^/ /' || echo " Bucket 为空)" local preview
preview=$(
AWS_ACCESS_KEY_ID="$key_id" \
AWS_SECRET_ACCESS_KEY="$secret_key" \
AWS_DEFAULT_REGION="$region" \
aws s3 ls "s3://${bucket}" $endpoint_arg 2>&1 | head -5
) || true
[[ -n "$preview" ]] && echo "$preview" | sed 's/^/ /' || echo " (列举预览为空)"
else else
error "S3 访问失败!错误: $result" error "S3 访问失败!错误: $hb_err"
echo " 排查: 确认 AccessKey/SecretKey、Bucket 名称、IAM s3:ListBucket 权限" echo " 排查: 确认 AccessKey/SecretKey、Bucket 与 Region、IAM(含 s3:ListBucket / HeadBucketInvalidAccessKeyId 表示密钥无效或已删除"
fi fi
# 测试写入 # 测试写入