Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python kubernetes吊舱上的Pip安装失败_Python_Docker_Kubernetes_Google Cloud Platform - Fatal编程技术网

Python kubernetes吊舱上的Pip安装失败

Python kubernetes吊舱上的Pip安装失败,python,docker,kubernetes,google-cloud-platform,Python,Docker,Kubernetes,Google Cloud Platform,我不熟悉Python和kubernetes。我试图在GCP上的k8s吊舱中部署一个docker容器,大约一小时后它被杀死。下面是docker文件和我试图执行的脚本 FROM python:3.7-slim AS build WORKDIR /app COPY . . RUN pip3 install pymysql && pip3 install waitress ENV DICT_FILE="/opt/srv/projects.dict" \

我不熟悉Python和kubernetes。我试图在GCP上的k8s吊舱中部署一个docker容器,大约一小时后它被杀死。下面是docker文件和我试图执行的脚本

FROM python:3.7-slim AS build

WORKDIR /app

COPY . .

RUN pip3 install pymysql && pip3 install waitress

ENV DICT_FILE="/opt/srv/projects.dict" \
    MODEL_FILE="/opt/srv/projects.model.cpickle" \
    INDEX_FILE="/opt/srv/projects.index" \
    EXTERNAL_INDEX_FILE="/opt/srv/projects.mm.metadata.cpickle"

EXPOSE 5000
EXPOSE 3306

ENTRYPOINT ["/bin/sh", "serve.sh"]
serve.sh

#!/bin/sh

mkdir -p /opt/srv
python3 setup.py bdist_wheel
pip3 install dist/app_search*.whl && semanticsearch-preprocess

cp /app/dist/app_search*.whl /opt/srv/
cd /opt/srv

pip3 install app_search*.whl

waitress-serve --call app_search.app:main
我在坠机前看到的最后一个日志是

已成功安装烧瓶-1.1.2 Jinja2-2.11.2 MarkupSafe-1.1.1 Werkzeug-0.16.1 aniso8601-8.0.0 ATRS-20.2.0 certifi-2020.6.20 chardet-3.0.4点击-7.1.2烧瓶-restplus-0.12.1 gensim-3.6.0 idna-2.10 importlib-metadata-2.0.0-1.1.0 jsonschema-3.2.0 numpy-1.19.2 Pyristent-0.17.3 pytz-2020.1请求-2.24.0 scipy-1.5.2 six-1.15.0 smart-open-3.0.0 app-search-0.0.9 urllib3-1.25.10 ZIP-3.3.0


如果我在本地机器上构建并运行docker,那么当您在Kubernetes上运行容器时,应用程序将在端口5000上工作并提供服务,使用的操作系统是COS(容器优化操作系统)。其上的容器是安全的,可防止在运行时进行任何更新。在这里,您试图添加依赖项并在运行时复制文件,但它无法工作

安装构建容器时所需的所有内容,并且仅在运行时执行容器

当然,如果将卷附加到容器,则可以读取和写入此装入的卷

在您的本地环境中,您没有相同的约束,Docker run对您更公平

您应该在Dockerfile中运行这些“安装”命令(就像这样)。是否有日志消息指出哪些未成功安装?