Docker容器间连接MinIO遇无效主机名错误求解决方案
解决方案
方法1:配置MinIO认可内部服务名(推荐)
在be_minio服务的environment中添加MINIO_SERVER_URL环境变量,指定容器间通信的合法地址:
be_minio: image: minio/minio restart: always ports: - 9000:9000 - 9001:9001 volumes: - ./volume_minio:/data command: server --address ":9000" --console-address ":9001" /data environment: MINIO_SERVER_URL: "http://be_minio:9000" # 你的其他环境变量...
该配置会让MinIO将be_minio:9000识别为合法的服务地址,接受来自该主机名的请求。
方法2:修改MinIO启动命令绑定服务名
修改be_minio的启动命令,将服务名作为监听地址之一:
be_minio: # 其他配置保持不变 command: server --address ":9000" --address "be_minio:9000" --console-address ":9001" /data
这样MinIO会同时监听容器内部的be_minio主机名和默认的0.0.0.0,允许来自该主机名的请求。
验证要点
- 无需额外配置网络:docker-compose默认会给所有服务创建专属网络,服务名可直接解析,
be_api能正常访问be_minio的服务名。 - 修改配置后重启容器:执行
docker-compose down && docker-compose up -d使新配置生效。
内容的提问来源于stack exchange,提问作者Mormen
相关产品推荐
相关产品推荐

