
Django & Docker
Dockerfile, docker-compose, multi-stage builds, томи, мережі, розробка проти продакшену
1Який базовий образ рекомендується для застосунку Django у продакшені?
Який базовий образ рекомендується для застосунку Django у продакшені?
Відповідь
Образ python:3.x-slim рекомендується, оскільки він пропонує баланс між малим розміром і сумісністю. Він містить основні бібліотеки, уникаючи зайвих залежностей повних образів. Образи Alpine, хоч і легші, можуть спричиняти проблеми сумісності з деякими скомпільованими бібліотеками Python (як psycopg2).
2Яка головна перевага multi-stage build для застосунку Django?
Яка головна перевага multi-stage build для застосунку Django?
Відповідь
Multi-stage build значно зменшує розмір кінцевого образу, розділяючи середовище збірки (з усіма інструментами компіляції) від середовища виконання. Залежності компілюються на першому етапі, потім лише необхідні файли копіюються в кінцевий образ, виключаючи інструменти збірки, тимчасові файли та кеші.
3Як у docker-compose.yml забезпечити, щоб контейнер Django чекав, поки PostgreSQL буде готовий приймати з'єднання?
Як у docker-compose.yml забезпечити, щоб контейнер Django чекав, поки PostgreSQL буде готовий приймати з'єднання?
Відповідь
Сама директива depends_on гарантує лише запуск контейнера, а не доступність сервісу. Щоб дочекатися, поки PostgreSQL дійсно буде готовий, потрібно використати скрипт wait-for-it.sh або dockerize, чи умову service_healthy з healthcheck. Цей підхід запобігає помилкам з'єднання під час запуску застосунку Django.
Яка різниця між COPY та ADD у Dockerfile для застосунку Django?
Як оптимізувати кешування шарів Docker під час встановлення залежностей Python?
+17 питань зі співбесід
Інші теми співбесід Django
Основи Python
Об'єктно-орієнтований Python
Основи Django
Models Django - Основи
Django Views
Шаблони Django
Форми Django
Розширені QuerySets
Автентифікація Django
Django Middleware
Django Admin
Django REST Framework
Сигнали Django
Завантаження файлів
Кешування в Django
Сесії Django
Email у Django
Тестування Django
Безпека Django
Розгортання Django
Просунутий Django ORM
Продуктивність Django
Django & Celery
Django Channels
Django & GraphQL
Django в екосистемі мікросервісів
Користувацькі команди Django
Інтернаціоналізація Django
Патерни проєктування Django
Django Async та ASGI
Settings та конфігурація для production
Спостережуваність і моніторинг
Опануй Django для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно