Я пытаюсь 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
и мой докер-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 установлен. В моем контейнере нет ничего другого из needs.txt , например, paramiko или pycrypto. Так что, если мои контейнеры не устанавливают их, почему docker-compose up работает хорошо?
Мои требования. Текст
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
У меня вопрос: почему я не вижу вещи, которыетреклам require.txt следует загружать в мой контейнер?
Примечание: в этом dockerfile и docker-compose.yml ранее из apache. Когда я увидел, что мои контейнеры не устанавливают другие вещи, я отказался от сборки apache.