从 docker 容器内部和外部访问预先指定的 get URL 的 minio 对象

2023-12-25

我使用以下 docker-compose.yml 文件来部署 FastAPI、MongoDB、Minio docker 容器。

version: '3.7'
services: 
  db:
    image: mongo:latest
    container_name: mongodb
    user: 1000:1000
    volumes: 
      - /home/krishna/mongodb/db:/data/db

  minio:
    image: minio/minio:latest
    container_name: minio
    command: server /data --console-address ":9001"
    ports:
      - 9000:9000
      - 9001:9001
    volumes:
      - /data:/data

  app:
    build: .
    container_name: imaging_container
    ports:
      - 8888:8888

从 FastAPI 内部,我可以使用以下命令连接到 minio 实例迷你:9000端点。 API 返回的输出获取预签名网址对于请求的 minio 对象,但 url 的形式为http://迷你:9000/成像/图像/30d12c89...我无法从 docker 容器外部访问它。

我找到了一个快速修复/解决方法来解决这个问题,即将这一行添加到/etc/主机文件作品

127.0.0.1       minio

但这在我看来是一个廉价的解决方案,主机必须修改他/她的机器。

我觉得这可以通过添加轻松解决Nginx 代理到码头集装箱。但我不知道该怎么做?

如果您可以建议 nginx 配置设置来解决此问题,或者也欢迎任何其他建议,那将会很有帮助。


您可以尝试通过docker端口转发(网络)公开端口 或者 请看一下指南:https://docs.min.io/docs/setup-nginx-proxy-with-minio https://docs.min.io/docs/setup-nginx-proxy-with-minio

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 docker 容器内部和外部访问预先指定的 get URL 的 minio 对象 的相关文章

随机推荐