Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker内部的Python无法在没有--tty的情况下打印unicode_Python_Python 2.7_Unicode_Docker_Locale - Fatal编程技术网

Docker内部的Python无法在没有--tty的情况下打印unicode

Docker内部的Python无法在没有--tty的情况下打印unicode,python,python-2.7,unicode,docker,locale,Python,Python 2.7,Unicode,Docker,Locale,我试图在Docker中运行一个简单的Python应用程序,使用官方的Python:2.7image 我的问题是,除非在docker run中启用-t/--tty,否则pythonprint命令在尝试打印Unicode字符时终止: UnicodeEncodeError: 'ascii' codec can't encode characters... 如果我启用--tty,它将正常工作 问题是我想在后台运行这个进程,使用--detach,而该模式不支持--tty 我需要对Dockerfile进行

我试图在Docker中运行一个简单的Python应用程序,使用官方的
Python:2.7
image

我的问题是,除非在
docker run
中启用
-t
/
--tty
,否则python
print
命令在尝试打印Unicode字符时终止:

UnicodeEncodeError: 'ascii' codec can't encode characters...
如果我启用
--tty
,它将正常工作

问题是我想在后台运行这个进程,使用
--detach
,而该模式不支持
--tty

我需要对Dockerfile进行什么样的更改,以便它在尝试打印Unicode字符串时不会终止

最小Dockerfile:

FROM python:2.7

CMD [ "python", "-c", "print (u'\\xc1')" ]
最小中断运行命令:

# error
docker run myimage 

# working
docker run --tty myimage

注意:它在官方的
python:3.5
图像中也可以正常工作。

我也遇到过这个问题,目前还没有找到一个好的解决方案。我相信我在Dockerfile中使用
ENV PYTHONIOENCODING UTF-8
解决了这个问题。你能检查一下这个问题是否解决了吗?我也遇到过这个问题,还没有找到一个好的解决方案。我相信我在Dockerfile中用
ENV PYTHONIOENCODING UTF-8
解决了这个问题。你能检查一下这是否能解决问题吗?