【发布时间】:2019-01-03 14:27:04
【问题描述】:
当我希望我的容器写为非根文件时,我发现 docker run 存在这个问题。
当我使用这种命令(入口点被覆盖)时,我没有任何问题:
docker run -u `id -u $USER` --entrypoint bash -it --rm -v somepath:somepathincontainer IMAGE
它工作正常,我可以使用I have no name! 用户帐户 x) 访问容器
但是,没有像这里这样的入口点的覆盖:
docker run -u `id -u $USER` -it --rm -v somepath:somepathincontainer IMAGE
我有这个错误:
Traceback (most recent call last):
File "/usr/local/bin/readmapper", line 4, in <module>
__import__('pkg_resources').run_script('MYTOOL==1.0.1', 'MYTOOL')
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 719, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 1504, in run_script
exec(code, namespace, namespace)
File "/usr/local/lib/python3.5/dist-packages/MYTOOL-1.0.1-py3.5.egg/EGG-INFO/scripts/MYTOOL", line 5, in <module>
from MYTOOL import FUNC1, FUNC2, FUNC3
File "/usr/local/lib/python3.5/dist-packages/MYTOOL-1.0.1-py3.5.egg/MYTOOL/FUNC3.py", line 6, in <module>
import pandas as pd
File "/usr/local/lib/python3.5/dist-packages/pandas/__init__.py", line 42, in <module>
from pandas.core.api import *
File "/usr/local/lib/python3.5/dist-packages/pandas/core/api.py", line 10, in <module>
from pandas.core.groupby.groupby import Grouper
File "/usr/local/lib/python3.5/dist-packages/pandas/core/groupby/__init__.py", line 2, in <module>
from pandas.core.groupby.groupby import (
File "/usr/local/lib/python3.5/dist-packages/pandas/core/groupby/groupby.py", line 49, in <module>
from pandas.core.frame import DataFrame
File "/usr/local/lib/python3.5/dist-packages/pandas/core/frame.py", line 74, in <module>
from pandas.core.series import Series
File "/usr/local/lib/python3.5/dist-packages/pandas/core/series.py", line 80, in <module>
import pandas.plotting._core as gfx
File "/usr/local/lib/python3.5/dist-packages/pandas/plotting/__init__.py", line 11, in <module>
from pandas.plotting._core import boxplot
File "/usr/local/lib/python3.5/dist-packages/pandas/plotting/_core.py", line 45, in <module>
from pandas.plotting import _converter
File "/usr/local/lib/python3.5/dist-packages/pandas/plotting/_converter.py", line 8, in <module>
import matplotlib.units as units
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 1133, in <module>
rcParams = rc_params()
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 967, in rc_params
fname = matplotlib_fname()
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 796, in matplotlib_fname
configdir = _get_configdir()
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 649, in _get_configdir
return _get_config_or_cache_dir(_get_xdg_config_dir())
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 626, in _get_config_or_cache_dir
return _create_tmp_config_dir()
File "/usr/lib/python3/dist-packages/matplotlib/__init__.py", line 555, in _create_tmp_config_dir
tempdir = os.path.join(tempdir, 'matplotlib-%s' % getpass.getuser())
File "/usr/lib/python3.5/getpass.py", line 170, in getuser
return pwd.getpwuid(os.getuid())[0]
KeyError: 'getpwuid(): uid not found: 1001'
编辑 1
I have no name!@c9368637178d:/$ id
uid=1001 gid=0(root) groups=0(root)
请向我询问更多信息。
【问题讨论】:
-
错误信息似乎很清楚:您的任意用户 ID 不在容器中的
/etc/passwd中。 -
你说得对 =)
标签: python docker docker-entrypoint docker-run