5.4 KiB
5.4 KiB
生产存储桶接入信息
适用范围:本文记录当前线上 MinIO(对象存储) / S3(对象存储兼容接口) 的已确认接入信息,供其它项目接入同一个生产存储桶时参考。
最后核对时间:2026-04-14
核对方式:生产服务器只读核对 + 生产应用容器环境变量核对 + 宿主机挂载路径核对
1. 已确认的生产接入信息
1.1 存储服务
- 存储服务:
MinIO(对象存储服务) - 生产服务器:
192.168.58.20 - API 端口:
9000 - 控制台端口:
9001 - 线上应用容器:
youyidian-3d-material - 存储服务容器:
minio
1.2 S3 兼容接入参数
S3_ENDPOINT(对象存储接口地址):http://192.168.58.20:9000S3_BUCKET(桶名):gongxiangpanS3_REGION(区域):us-east-1S3_ENABLE_PATH_STYLE(路径风格访问):1S3_SET_ACL(上传后写 public-read):1S3_PREVIEW_URL_EXPIRE_IN(预览链接过期秒数):7200
1.3 对外访问域名
S3_PUBLIC_DOMAIN(公开访问域名):https://s3.jiansun.vip/gongxiangpan
当前项目最终对象 URL(访问地址)规则:
https://s3.jiansun.vip/gongxiangpan/<前缀><文件名>
例如当前项目使用的前缀是:
S3_FILE_PATH(对象前缀):由壹点AI/
所以当前项目上传出来的对象通常长这样:
https://s3.jiansun.vip/gongxiangpan/由壹点AI/<文件名>
2. 宿主机真实挂载路径
2.1 MinIO 数据目录
- 宿主机数据路径:
/mnt/tank/apps/minio/data - 容器内路径:
/data
2.2 MinIO 配置目录
- 宿主机配置路径:
/mnt/tank/apps/minio/config - 容器内路径:
/root/.minio
2.3 当前项目本地上传目录
这个不是存储桶,但很多视频源文件会先落这里:
- 宿主机路径:
/mnt/PoolOne/apps/youyidian-3d/uploads - 容器内路径:
/app/uploads
3. 新项目接入时建议怎么用
3.1 可以共用什么
新项目如果要共用这一个生产桶,可以共用这些固定信息:
S3_ENDPOINTS3_BUCKETS3_REGIONS3_PUBLIC_DOMAINpath-style(路径风格)
3.2 不建议直接共用什么
下面两项不建议直接原样复用:
- 当前项目的
S3_FILE_PATH(对象前缀) - 当前项目正在使用的长期访问密钥
原因很直接:
- 如果多个项目共用同一个前缀,文件名一旦撞上,后面排查和清理会很乱。
- 如果多个项目长期共用同一套生产密钥,任何一个项目泄露,整个生产桶都会一起暴露。
3.3 推荐接法
新项目建议这样配:
S3_ENDPOINT=http://192.168.58.20:9000
S3_BUCKET=gongxiangpan
S3_REGION=us-east-1
S3_ENABLE_PATH_STYLE=1
S3_PUBLIC_DOMAIN=https://s3.jiansun.vip/gongxiangpan
S3_FILE_PATH=<新项目自己的前缀>/
例如:
S3_FILE_PATH=新项目名/
或者:
S3_FILE_PATH=业务线A/新项目名/
4. 密钥处理建议
风险等级:高
当前生产环境里确实存在可用的 Access Key(访问密钥) / Secret Key(私钥),但本文不直接记录明文。
不建议:
- 直接把
MinIO Root(管理员根账号)给业务项目使用 - 让多个项目长期共用同一套生产访问密钥
建议:
- 给每个新项目单独发一套对象存储访问密钥
- 至少给每个项目分独立前缀
- 如果条件允许,进一步按项目拆权限策略
5. 如果必须核对线上实际配置
5.1 看当前应用实际在用的 S3 配置
ssh root@192.168.58.20 "docker exec youyidian-3d-material sh -lc 'env'"
然后重点看:
S3_ENDPOINTS3_BUCKETS3_REGIONS3_PUBLIC_DOMAINS3_FILE_PATHS3_ACCESS_KEY_IDS3_SECRET_ACCESS_KEY
5.2 看 MinIO 挂载
ssh root@192.168.58.20 "docker inspect minio --format '{{json .Mounts}}'"
5.3 看 MinIO 本机配置文件
ssh root@192.168.58.20 "sed -n '1,200p' /mnt/tank/apps/minio/config/minio.env"
6. 当前结论
- 生产对象存储实例可以复用
- 生产桶名已经确认是
gongxiangpan - 公开访问域名已经确认是
https://s3.jiansun.vip/gongxiangpan - 当前项目对象前缀是
由壹点AI/ - 其它项目如果接入,建议“共用桶,不共用前缀,不共用长期密钥”
7. 另一个项目临时接入说明
已确认另一个项目使用下面这套固定配置:
S3_ENDPOINT=http://192.168.58.20:9000S3_BUCKET=gongxiangpanS3_REGION=us-east-1S3_ENABLE_PATH_STYLE=1S3_PUBLIC_DOMAIN=https://s3.jiansun.vip/gongxiangpanS3_FILE_PATH=3danzhuang/furniture-3d-system/
风险等级:高
说明:
- 另一个项目当前要求的是“先能接上生产桶”
- 目前本项目已经掌握现有生产项目使用中的对象存储访问密钥
- 但把明文密钥直接写进仓库文档不安全,后续极易被提交扩散
因此实际可用的临时接入环境变量,已单独写入本地忽略文件:
这份文件可直接给另一个项目参考或落到新服务器。
不建议长期这样复用当前生产项目密钥。更稳的最终方案仍然是:
- 给另一个项目单独创建一套
Access Key / Secret Key(访问密钥 / 密钥) - 继续保留它自己的对象前缀
3danzhuang/furniture-3d-system/