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或者容器名称>
相关推荐
AI你一生一世1 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影1 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯1 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
工业一体机老司机4 小时前
Docker部署工控机采集服务 Compose编排与开机自启
运维·docker·容器
海的透彻6 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat6 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
后台模板学习7 小时前
大模型 Prompt 工程在电商订单系统中的踩坑记录
java·python·prompt
w_zero_one7 小时前
算法--构造
java·数据结构·算法
SL_staff7 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
SL_staff8 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈