Pycurl 二进制文件不会在多级 docker 中复制

问题描述

我有以下 dockerfile。 在requirements.txt文件中,我有这个包 pycurl==7.43.0.2。我的问题是这个包的二进制文件似乎没有复制到最后一个阶段。如果我进入构建映像,例如,执行 import pycurl 会给我这个错误

导入错误:libcurl.so.4:无法打开共享对象文件:没有那个文件或目录

搜索了这个错误并找到了这个 link 并尝试将 ENV LD_LIBRARY_PATH=/usr/local/lib 添加到 dockerfile,但仍然出现相同的错误。有人知道我如何解决这个问题吗?

# stage 1
FROM python:3.7-slim AS base

copY requirements.txt requirements.txt
RUN apt-get update && apt-get install -y --no-install-recommends \
    g++ \
    gcc \
    gettext \
    imagemagick \
    libcurl4-openssl-dev \
    libmagic-dev \
    libssl-dev \
    && pip install -r requirements.txt \
    && rm -rf /var/lib/apt/lists/*

# stage 2
FROM jrottenberg/ffmpeg:4.0-scratch AS ffmpeg

# stage 3
FROM python:3.7-slim
copY --from=base /usr/local/lib/python3.7/site-packages/ /usr/local/lib/python3.7/site-packages/
copY --from=base /usr/local/bin/ /usr/local/bin/
copY --from=ffmpeg / /

# Set work directory
workdir /code/project

ENV PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1

copY . .

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...