You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker容器化Python应用中如何获取用户命令行输入?

Docker容器中实现Python交互式输入的正确方法

问题描述

我开发了一个简单的Python应用,通过input()函数请求用户输入,但使用docker run运行后,命令提示符在收集输入前就关闭了,无法与input()交互。

代码示例

x = input("What is your name?")
print(x)

解决方案

1. 运行容器时添加交互参数

Docker默认不会为容器分配交互式终端,导致input()无法获取输入。运行容器时必须加上-i(保持标准输入流打开)和-t(分配伪终端)参数,组合成-it,让容器能和宿主机终端交互。

完整运行命令:

docker run -it <你的镜像名称>

2. 确保Dockerfile配置正确

如果是自行构建镜像,使用支持Python的基础镜像即可,无需额外复杂配置。示例Dockerfile如下:

# 使用官方Python slim镜像
FROM python:3.10-slim

# 设置工作目录
WORKDIR /app

# 复制本地脚本到容器内
COPY your_script.py .

# 设置容器启动命令
CMD ["python", "your_script.py"]

内容的提问来源于stack exchange,提问作者ChillieCode

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 20:03:07