我正在尝试 dockerize 我的 django应用,该应用中包含PostgreSQL和apache。我有我的dockerfile和docker-compose.yml,当我运行docker-compose up
时,一切正常。但是,当我进入容器时,看不到django,apache vs.,但是所有文件都已成功复制。我遵循了https://www.londonappdeveloper.com/setting-up-postgresql-database-with-a-django-docker-application/
我的Dockerfile:
FROM python:2.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY . /code/
RUN pip install -r requirements.txt && pip install paramiko && pip install pycrypto
和我的docker-compose.yml
version:'3'
services:
web:
build: .
command: python xx/xx/manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
db:
images: postgres
我尝试了docker run -it <mycontainer> bash
然后尝试which python
,which django
之类的东西,只安装了python。 requirements.txt 中的容器中没有其他东西,例如paramiko或pycrypto。因此,如果我的容器没有安装它们,为什么docker-compose up运行良好?
我的requirements.txt
certifi==2018.4.16
chardet==3.0.4
Django==1.11.13
djangorestframework==3.8.2
djangorestframework-jwt==1.11.0
idna==2.6
numpy==1.14.3
paramiko>=1.15.2
pycrypto==2.6.1
psycopg2==2.7.4
PyJWT==1.6.4
pytz==2018.4
requests==2.18.4
urllib3==1.22
django-rest-swagger==2.2.0
./xx/PyCVESearch
我的问题:为什么我看不到要求文件中应该下载的内容?
注意:在此dockerfile和docker-compose.yml中,来自Apache。当我看到我的容器没有安装其他东西时,我放弃了构建apache。