首页 > 解决方案 > Python:在站点包文件夹中的 docker 容器中安装本地包

问题描述

-e我需要在 docker 容器中安装本地包(我自己的共享包),但如果没有选项,它就无法工作。

我有以下内容:

Docker 文件夹树:

./
├── Dockerfile
├── mypackage-lib
│   ├── MANIFEST.in
│   ├── mypackagelib
│   └── setup.py
├── requirements.txt

Dockerfile

# pull official base image
FROM python:3.8.3 


# set work directory
WORKDIR /usr/src/

# copy requirements file
COPY ./requirements.txt /usr/src/requirements.txt
COPY ./mypackage-lib /usr/src/mypackage-lib

# install dependencies
RUN pip install --no-cache-dir -r requirements.txt
RUN pip install -e /usr/src/mypackage-lib

# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

从 docker 容器中冻结 pip:

# Editable install with no version control (mypackagelib==0.1)
-e /usr/src/mypackage-lib

我想把它放在site-packages目录中,而不是从/usr/src/mypackage-lib

如果没有该选项-e,主应用程序(正在使用库)将无法工作。

setup.py好像:

install_requires = [
        'pydantic'
    ]

setup(name='mypackagelib',
    version='0.1',
    author='aemilc',
    packages=['mypackagelib'],
    install_requires=install_requires,
    include_package_data=True,
    python_requires='>3.8')

我忘记了什么?

谢谢!

E.

标签: python-3.xdocker

解决方案


推荐阅读