FROM webdevops/base:ubuntu-16.04
RUN apt-get update && apt-get -y upgrade && apt-get install -y --no-install- recommends \
apache2 \
openssh-client \
python3 \
python3-dev \
python3-venv \
python3-psycopg2 \
python3-pip \
pyflakes3 \
pylint3 \
pep8 \
pep257 \
postgresql-client \
libapache2-mod-wsgi-py3 \
&& apt-get clean \
&& rm -fr /var/lib/apt/lists/*
RUN mkdir /var/www/html/hotels-project
RUN cd /var/www/html/hotels-project/ \
&& python3 -m venv hotels-venv \
&& /bin/bash -c "source hotels-venv/bin/activate"
RUN pip install 'django<2.0'
RUN pip install requests
RUN pip install psycopg2
显示消息:
错误:服务&#39; apache-python&#39;无法构建:命令&#39; / bin / sh -c pip install&#39; django&lt; 2.0&#39;&#39;返回非零代码:127
答案 0 :(得分:0)
您的泊坞窗文件中有两个问题。
pip
代替pip3
virtualenv
并在另一步骤中运行命令在每个RUN
步骤的Dockerfile中,您将获得一个新的终端。因此,您在之前的source
语句中执行的任何RUN
命令都不再有效。
所以你的代码应该是这样的
RUN cd /var/www/html/hotels-project/ \
&& python3 -m venv hotels-venv \
&& /bin/bash -c "source hotels-venv/bin/activate" \
&& pip3 install -r requirements.txt
requirements.txt
应低于内容
django<2.0
requests==X.XX
psycopg2==y.yy
你应该怎么做