Docker映像构建在本地工作,但在gitlab管道中失败

2024-09-27 09:29:39 发布

您现在位置:Python中文网/ 问答频道 /正文

今天开始面临奇怪的问题

这是我们的BE Dockerfile:

FROM company_name/python
MAINTAINER company_name DevOps <company_name.app@gmail.com>

ENV PIP_PROCESS_DEPENDENCY_LINKS=1

RUN apt-get update -qq -y \
&&  apt-get install -qq -y xmlsec1 \
&& pipenv install --system --deploy \
&&  chown -R "${APP_USER}":"${APP_GRP}" "${APP_HOME}" \
&&  apt-get clean \
&&  rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

从一天到一天,它在Gitlab管道中的每一次主合并中都成功构建。 但今天它失败了,日志如下:

Step 1/4 : FROM company_name/python
latest: Pulling from company_name/python
e22122b926a1: Pulling fs layer
....
0931161567bc: Pull complete
Digest: sha256:362cdd08b342f6c0378009f658dc5f39ab2cf70a9de2c5452f41c35484216bba
Status: Downloaded newer image for company_name/python:latest
 ---> 4f581666d426
Step 2/4 : MAINTAINER company_name DevOps <company_name.app@gmail.com>
 ---> Running in 5d2a5780e158
Removing intermediate container 5d2a5780e158
 ---> 0c9bbd8d8405
Step 3/4 : ENV PIP_PROCESS_DEPENDENCY_LINKS=1
 ---> Running in 8649ac9f7f2c
Removing intermediate container 8649ac9f7f2c
 ---> e78c7be1e6c3
Step 4/4 : RUN apt-get update -qq -y &&  apt-get install -qq -y xmlsec1 && pipenv install --system --deploy --ignore-pipfile &&  chown -R "${APP_USER}":"${APP_GRP}" "${APP_HOME}" &&  apt-get clean &&  rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 ---> Running in 11c42fe2e136
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libxmlsec1:amd64.
(Reading database ... 28809 files and directories currently installed.)
Preparing to unpack .../libxmlsec1_1.2.27-2_amd64.deb ...
Unpacking libxmlsec1:amd64 (1.2.27-2) ...
Selecting previously unselected package libxmlsec1-openssl:amd64.
Preparing to unpack .../libxmlsec1-openssl_1.2.27-2_amd64.deb ...
Unpacking libxmlsec1-openssl:amd64 (1.2.27-2) ...
Selecting previously unselected package xmlsec1.
Preparing to unpack .../xmlsec1_1.2.27-2_amd64.deb ...
Unpacking xmlsec1 (1.2.27-2) ...
Setting up libxmlsec1:amd64 (1.2.27-2) ...
Setting up libxmlsec1-openssl:amd64 (1.2.27-2) ...
Setting up xmlsec1 (1.2.27-2) ...
Processing triggers for libc-bin (2.28-10) ...
Warning: --system is intended to be used for pre-existing Pipfile installation, not installation of specific packages. Aborting.
The command '/bin/bash -o pipefail -c apt-get update -qq -y &&  apt-get install -qq -y xmlsec1 && pipenv install --system --deploy &&  chown -R "${APP_USER}":"${APP_GRP}" "${APP_HOME}" &&  apt-get clean &&  rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*' returned a non-zero code: 1
Cleaning up file based variables
00:01
ERROR: Job failed: exit code 1

但它在本地有效!例如,我可以在本地机器上建立该映像。 试图用pipenv install --system --deploy --ignore-pipfile代替pipenv install --system --deploy --ignore-pipfile-运气不好。 所以我被卡住了。 有人能告诉我什么是问题吗


Tags: installnameappgetvarpipenvaptsystem

热门问题