docker 安装minio nginx,配置nginx根据文根路由minio展示图片

  1. docker安装minio
bash 复制代码
docker pull minio
  1. docker安装ngnix
bash 复制代码
docker pull nginx
  1. nginx配置
bash 复制代码
server {
    listen 80;
    server_name 192.168.197.148;  # 必须与 MINIO_SERVER_URL 一致(无端口)

    # 关键:/wengen/ 路径映射到 MinIO 的 Bucket 根目录
    location /wengen/ {
        # 1. 代理到 MinIO 容器内部地址(末尾保留 / 表示路径替换)
        proxy_pass http://172.17.0.2:9000/;  # 注意:末尾的 / 不可省略!

        # 2. 强制重写 Host 头(必须与 MINIO_SERVER_URL 完全一致)
        proxy_set_header Host 192.168.197.148:9000;  # 硬编码为 MinIO 配置的域名+端口

        # 3. 传递客户端真实信息(关键用于签名验证)
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # 4. 禁用缓冲(避免大文件传输问题)
        proxy_buffering off;

        # 5. 重要:修复 S3 API 的 Transfer-Encoding 头
        proxy_request_buffering off;
        proxy_http_version 1.1;
        proxy_set_header Connection "";

        # 6. 超时设置(根据网络环境调整)
        proxy_connect_timeout 300;
        proxy_send_timeout 600;
        proxy_read_timeout 600;
        proxy_buffer_size 128k;
        proxy_buffers 4 256k;
        proxy_busy_buffers_size 256k;
    }

    # 可选:健康检查路径(避免误拦截)
    location /healthz {
        return 200 'OK';
        add_header Content-Type text/plain;
    }
}
  1. 启动minio
bash 复制代码
docker run -d   --name my_minio   -p 9000:9000   -p 9001:9001   -v /wz_conf/minio/data:/data   -v /wz_conf/minio/config:/root/.minio   -e MINIO_ROOT_USER=admin   -e MINIO_ROOT_PASSWORD=admin123   minio/minio server /data --console-address ":9001"
  1. 启动nginx
bash 复制代码
docker run -d   --name nginx-minio   -p 80:80   -v /nginx/config/minio-proxy.conf:/etc/nginx/conf.d/default.conf   --network bridge   <minio的容器id或者容器名称>
相关推荐
吴阿福|一人公司1 小时前
深度解析 Python 类变量修改的命名空间隔离
java·服务器·数据结构
zzz_23681 小时前
【Java基础】链表的七十二变——从LRU缓存到手写浏览器前进后退
java·链表·缓存
番茄去哪了1 小时前
神领物流面试题(一)
java·大数据·中间件
云烟成雨TD1 小时前
Agent Scope Java 2.x 系列【9】接入高德 MCP 服务
java·人工智能·agent
gaohe26AIliuzeyu2 小时前
Java内部类
java·开发语言
qiuziqiqi2 小时前
ocker-compose.yml 和Dockerfile 区别
运维·docker·容器
西安邮电大学2 小时前
有关数组的经典算法题
java·后端·其他·算法·面试
互联网推荐官2 小时前
上海AI Agent智能体开发公司技术选型实录:六条路径、三类架构与真实落地约束
java·人工智能·ai·架构·开发经验·上海
mikasa6672 小时前
关于Spring MVC 基于 AOP 实现的全局控制器统一处理方案@ControllerAdvice
java·spring·mvc