Minikube环境中Docker容器Curl连接拒绝问题求助
问题:Docker容器运行Flask计算器应用无法访问
环境信息
- 运行环境:Windows 10 上的 Ubuntu 22.04 虚拟机,已部署 Minikube
- Docker 版本:24.0.5-0ubuntu1~22.04.1
操作与异常现象
执行 sudo docker run -d -p 8000:5000 calculator 启动镜像后,出现以下问题:
- 通过
minikube ip获取的IP(192.168.59.100)执行curl http://192.168.59.100:8000/add/3/2,报错:curl: (7) Failed to connect to 192.168.59.100 port 8000 after 14 ms: Connection refused - 尝试执行论坛方案中的
docker-machine ip default,系统提示需安装 Docker(实际已安装) - 本地执行
curl http://localhost:8000/add/3/2同样无法正常访问
相关构建文件
app.py
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return "Hello, welcome to the calculator app!" @app.route('/add/<int:num1>/<int:num2>') def add(num1, num2): result = num1 + num2 return str(result) def subtract(num1, num2): result = num1 - num2 return str(result) def multiply(num1, num2): result = num1 * num2 return str(result) def division(num1, num2): result = num1 / num2 return str(result) if __name__ == '__main__': app.run(host='0.0.0.0', port=5000)
requirements.txt
flask==3.0.0
Dockerfile
FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app.py . CMD ["python”, “app.py"]
操作步骤
docker build -t calculator .docker run -d -p 8000:5000 calculatorcurl http://localhost:8000/add/3/2
请问问题出在哪里?如何解决?
内容的提问来源于stack exchange,提问作者GoT GOt
相关产品推荐
相关产品推荐

