Docker image with python & alpine failure due missing compiler error

佐手、 提交于 2019-12-05 20:14:31

问题


I'm looking for a docker image with both python3 and a crontab. When I use python:latest as a base, I have no cron, but all required python packages install without problem.

When I use alpine as a base I have the (busybox) cron working, but are unable to install specific python package due to compiler error.

The same applies when I use python:alpine.

Collecting pynacl>=1.0.1 (from paramiko->-r required_python_packages.txt (line 6))
  Downloading PyNaCl-1.1.2.tar.gz (3.1MB)
    Complete output from command python setup.py egg_info:

        No working compiler found, or bogus compiler options
        passed to the compiler from Python's distutils module.
        See the error messages above.

Any advise?


回答1:


You need a working compiler, the easiest way around this is to install the build-base package like so:

apk add --no-cache --virtual .pynacl_deps build-base python3-dev libffi-dev

This will install various tools that are required to compile pynacl and pip install pynacl will now succeed.

Note it is optional to use the --virtual flag but it makes it easy to trim the image because you can run apk del .pynacl_deps later in your Dockerfile as they are not needed any more and would reduce the overall size of the image.



来源:https://stackoverflow.com/questions/45028650/docker-image-with-python-alpine-failure-due-missing-compiler-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!