# Django & Docker (Django) > Dockerfile、docker-compose、マルチステージビルド、ボリューム、ネットワーク、開発環境と本番環境 - 20 面接問題 - Senior - [面接問題: Django](https://sharpskill.dev/ja/technologies/django/interview-questions.md) ## 1. 本番環境のDjangoアプリケーションに推奨されるベースイメージはどれですか? **回答** python:3.x-slimイメージは、サイズの小ささと互換性のバランスが取れているため推奨されます。完全なイメージの不要な依存関係を避けつつ、必須ライブラリを含んでいます。Alpineイメージはより軽量ですが、コンパイルされた一部のPythonライブラリ(psycopg2など)との互換性の問題を引き起こす可能性があります。 ## 2. Djangoアプリケーションにおけるマルチステージビルドの主な利点は何ですか? **回答** マルチステージビルドは、ビルド環境(すべてのコンパイルツールを含む)と実行環境を分離することで、最終イメージのサイズを大幅に削減します。依存関係は最初のステージでコンパイルされ、その後必要なファイルだけが最終イメージにコピーされ、ビルドツール、一時ファイル、キャッシュは除外されます。 ## 3. docker-compose.ymlで、DjangoコンテナがPostgreSQLが接続を受け付ける準備ができるまで待機することをどのように保証しますか? **回答** depends_onディレクティブだけではコンテナの起動のみが保証され、サービスの可用性は保証されません。PostgreSQLが実際に準備できるまで待機するには、wait-for-it.shスクリプトやdockerize、またはhealthcheck付きのservice_healthy条件を使用する必要があります。このアプローチにより、Djangoアプリケーション起動時の接続エラーを防げます。 ## さらに17問利用可能 - DjangoアプリケーションのDockerfileにおけるCOPYとADDの違いは何ですか? - Python依存関係のインストール時にDockerレイヤーのキャッシュを最適化するにはどうすればよいですか? 無料で登録: https://sharpskill.dev/ja/login ## その他のDjango面接トピック - [Pythonの基礎](https://sharpskill.dev/ja/technologies/django/interview-questions/python-basics.md): 25問, Junior - [Python オブジェクト指向](https://sharpskill.dev/ja/technologies/django/interview-questions/python-oop.md): 20問, Junior - [Django の基礎](https://sharpskill.dev/ja/technologies/django/interview-questions/django-fundamentals.md): 20問, Junior - [Django Models - 基礎](https://sharpskill.dev/ja/technologies/django/interview-questions/django-models-basics.md): 22問, Junior - [Django ビュー](https://sharpskill.dev/ja/technologies/django/interview-questions/django-views.md): 20問, Junior - [Django テンプレート](https://sharpskill.dev/ja/technologies/django/interview-questions/django-templates.md): 18問, Junior - [Django フォーム](https://sharpskill.dev/ja/technologies/django/interview-questions/django-forms.md): 22問, Mid-Level - [高度なQuerySet](https://sharpskill.dev/ja/technologies/django/interview-questions/django-querysets.md): 25問, Mid-Level - [Django 認証](https://sharpskill.dev/ja/technologies/django/interview-questions/django-authentication.md): 22問, Mid-Level - [Django ミドルウェア](https://sharpskill.dev/ja/technologies/django/interview-questions/django-middleware.md): 18問, Mid-Level - [Django Admin](https://sharpskill.dev/ja/technologies/django/interview-questions/django-admin.md): 20問, Mid-Level - [Django REST Framework](https://sharpskill.dev/ja/technologies/django/interview-questions/django-rest-framework.md): 30問, Mid-Level - [Django シグナル](https://sharpskill.dev/ja/technologies/django/interview-questions/django-signals.md): 18問, Mid-Level - [ファイルアップロード](https://sharpskill.dev/ja/technologies/django/interview-questions/django-file-upload.md): 20問, Mid-Level - [Django キャッシュ](https://sharpskill.dev/ja/technologies/django/interview-questions/django-caching.md): 20問, Mid-Level - [Django セッション](https://sharpskill.dev/ja/technologies/django/interview-questions/django-sessions.md): 18問, Mid-Level - [Django のメール](https://sharpskill.dev/ja/technologies/django/interview-questions/django-email.md): 18問, Mid-Level - [Django のテスト](https://sharpskill.dev/ja/technologies/django/interview-questions/django-testing.md): 22問, Mid-Level - [Django のセキュリティ](https://sharpskill.dev/ja/technologies/django/interview-questions/django-security.md): 22問, Mid-Level - [Django のデプロイ](https://sharpskill.dev/ja/technologies/django/interview-questions/django-deployment.md): 24問, Mid-Level - [Django ORM 上級](https://sharpskill.dev/ja/technologies/django/interview-questions/django-orm-advanced.md): 28問, Senior - [Django のパフォーマンス](https://sharpskill.dev/ja/technologies/django/interview-questions/django-performance.md): 24問, Senior - [Django & Celery](https://sharpskill.dev/ja/technologies/django/interview-questions/django-celery.md): 22問, Senior - [Django Channels](https://sharpskill.dev/ja/technologies/django/interview-questions/django-channels.md): 24問, Senior - [Django & GraphQL](https://sharpskill.dev/ja/technologies/django/interview-questions/django-graphql.md): 24問, Senior - [マイクロサービスエコシステムにおけるDjango](https://sharpskill.dev/ja/technologies/django/interview-questions/django-microservices.md): 24問, Senior - [カスタムDjangoコマンド](https://sharpskill.dev/ja/technologies/django/interview-questions/django-custom-commands.md): 18問, Senior - [Django の国際化](https://sharpskill.dev/ja/technologies/django/interview-questions/django-internationalization.md): 20問, Senior - [Django デザインパターン](https://sharpskill.dev/ja/technologies/django/interview-questions/django-design-patterns.md): 24問, Senior - [Django Async と ASGI](https://sharpskill.dev/ja/technologies/django/interview-questions/django-async-asgi.md): 26問, Senior - [Settings と本番環境の設定](https://sharpskill.dev/ja/technologies/django/interview-questions/django-settings-configuration.md): 22問, Senior - [オブザーバビリティとモニタリング](https://sharpskill.dev/ja/technologies/django/interview-questions/django-observability.md): 24問, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ja/technologies/django/interview-questions/django-docker