paddle-serving-server 的 Docker 镜像内安装 paddle-serving-server 报错
Created by: myfjdthink
问题描述
进入教程提供的Docker 容器后安装 paddle-serving-server 会报错,是 grpcio 这个包导致的。 根据这个教程来做的 https://github.com/PaddlePaddle/Serving , 使用的是 CPU 版本的Docker 镜像。
相关信息:
操作系统:macOS 10.14.6/ Ubuntu 16 也有同样问题 docker desktop version 2.3.0.3 Docker version 19.03.8
重现流程:
安装教程
docker pull hub.baidubce.com/paddlepaddle/serving:latest
docker run -p 9292:9292 --name test -dit hub.baidubce.com/paddlepaddle/serving:latest
docker exec -it test bash
在镜像内部执行
pip3 install paddle-serving-server -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
错误信息:
... gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DOPENSSL_NO_ASM=1 -D_WIN32_WINNT=1536 -DGPR_BACKWARDS_COMPATIBILITY_MODE=1 -DHAVE_CONFIG_H=1 -DGRPC_ENABLE_FORK_SUPPORT=1 -DPyMODINIT_FUNC=extern "C" attribute((visibility ("default"))) PyObject* -DGRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK=1 -Isrc/python/grpcio -Iinclude -I. -Ithird_party/abseil-cpp -Ithird_party/address_sorting/include -Ithird_party/cares -Ithird_party/cares/cares -Ithird_party/cares/config_linux -Ithird_party/boringssl-with-bazel/src/include -Ithird_party/upb -Isrc/core/ext/upb-generated -Ithird_party/zlib -I/usr/include/python3.6m -c src/python/grpcio/grpc/_cython/cygrpc.cpp -o python_build/temp.linux-x86_64-3.6/src/python/grpcio/grpc/_cython/cygrpc.o -std=c++11 -std=gnu99 -fvisibility=hidden -fno-wrapv -fno-exceptions -pthread gcc: error trying to exec 'cc1plus': execvp: No such file or directory creating tmp creating tmp/tmptsxr4dqp gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python3.6m -c /tmp/tmptsxr4dqp/a.c -o tmp/tmptsxr4dqp/a.o Traceback (most recent call last): File "/usr/lib64/python3.6/distutils/unixccompiler.py", line 127, in _compile extra_postargs) File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/_spawn_patch.py", line 54, in _commandfile_spawn _classic_spawn(self, command) File "/usr/lib64/python3.6/distutils/ccompiler.py", line 909, in spawn spawn(cmd, dry_run=self.dry_run) File "/usr/lib64/python3.6/distutils/spawn.py", line 36, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/usr/lib64/python3.6/distutils/spawn.py", line 159, in _spawn_posix % (cmd, exit_status)) distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1
During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/commands.py", line 262, in build_extensions build_ext.build_ext.build_extensions(self) File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 448, in build_extensions self._build_extensions_serial() File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 473, in _build_extensions_serial self.build_extension(ext) File "/usr/lib/python3.6/site-packages/setuptools/command/build_ext.py", line 199, in build_extension _build_ext.build_extension(self, ext) File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 533, in build_extension depends=ext.depends) File "/usr/lib64/python3.6/distutils/ccompiler.py", line 574, in compile self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/commands.py", line 246, in new_compile pp_opts) File "/usr/lib64/python3.6/distutils/unixccompiler.py", line 129, in _compile raise CompileError(msg) distutils.errors.CompileError: command 'gcc' failed with exit status 1 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-build-_r9c2jgo/grpcio/setup.py", line 421, in <module> cmdclass=COMMAND_CLASS, File "/usr/lib/python3.6/site-packages/setuptools/__init__.py", line 129, in setup return distutils.core.setup(**attrs) File "/usr/lib64/python3.6/distutils/core.py", line 148, in setup dist.run_commands() File "/usr/lib64/python3.6/distutils/dist.py", line 955, in run_commands self.run_command(cmd) File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/usr/lib/python3.6/site-packages/setuptools/command/install.py", line 61, in run return orig.install.run(self) File "/usr/lib64/python3.6/distutils/command/install.py", line 556, in run self.run_command('build') File "/usr/lib64/python3.6/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/usr/lib64/python3.6/distutils/command/build.py", line 135, in run self.run_command(cmd_name) File "/usr/lib64/python3.6/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/usr/lib/python3.6/site-packages/setuptools/command/build_ext.py", line 78, in run _build_ext.run(self) File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 339, in run self.build_extensions() File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/commands.py", line 267, in build_extensions "Failed `build_ext` step:\n{}".format(formatted_exception)) commands.CommandError: Failed `build_ext` step: Traceback (most recent call last): File "/usr/lib64/python3.6/distutils/unixccompiler.py", line 127, in _compile extra_postargs) File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/_spawn_patch.py", line 54, in _commandfile_spawn _classic_spawn(self, command) File "/usr/lib64/python3.6/distutils/ccompiler.py", line 909, in spawn spawn(cmd, dry_run=self.dry_run) File "/usr/lib64/python3.6/distutils/spawn.py", line 36, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/usr/lib64/python3.6/distutils/spawn.py", line 159, in _spawn_posix % (cmd, exit_status)) distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/commands.py", line 262, in build_extensions build_ext.build_ext.build_extensions(self) File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 448, in build_extensions self._build_extensions_serial() File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 473, in _build_extensions_serial self.build_extension(ext) File "/usr/lib/python3.6/site-packages/setuptools/command/build_ext.py", line 199, in build_extension _build_ext.build_extension(self, ext) File "/usr/lib64/python3.6/distutils/command/build_ext.py", line 533, in build_extension depends=ext.depends) File "/usr/lib64/python3.6/distutils/ccompiler.py", line 574, in compile self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) File "/tmp/pip-build-_r9c2jgo/grpcio/src/python/grpcio/commands.py", line 246, in new_compile pp_opts) File "/usr/lib64/python3.6/distutils/unixccompiler.py", line 129, in _compile raise CompileError(msg) distutils.errors.CompileError: command 'gcc' failed with exit status 1 ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-_r9c2jgo/grpcio/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-crzaccdf-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-_r9c2jgo/grpcio/