У меня есть приложение django с некоторой моделью. У меня есть команда manage.py
, которая создает модели n
и сохраняет ее в db. Он работает с приличной скоростью на моей главной машине.
Но если я запустил его в докере, он работает очень медленно, 1 экземпляр создается и сохраняется за 40-50 секунд. Я думаю, что у меня что-то не хватает на том, как работает Docker, может кто-нибудь указать, почему производительность низкая и что я могу с ней сделать?
Докер-compose.yml:
version: '2'
services:
db:
restart: always
image: "postgres:9.6"
ports:
- "5432:5432"
volumes:
- /usr/local/var/postgres:/var/lib/postgresql
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=my_db
- POSTGRES_USER=postgres
web:
build: .
command: bash -c "./wait-for-it.sh db:5432 --timeout=15; python manage.py migrate; python manage.py runserver 0.0.0.0:8000; python manage.py mock 5"
ports:
- "8000:8000"
expose:
- "8000"
depends_on:
- db
файл докеров для веб-службы:
FROM python:3.6
ENV PYTHONBUFFERED 1
ADD . .
WORKDIR .
RUN pip install -r requirements.txt
RUN chmod +x wait-for-it.sh