मैंने इस समस्या की जांच में कुछ घंटे बिताए हैं और मुझे इसका समाधान मिल गया है। डॉकर depends_on
बस एक और सेवा चलाने के लिए सेवा स्टार्टअप पर विचार करें। ऐसा इसलिए होता है क्योंकि जैसे ही db
शुरू हो गया है, सेवा-ऐप आपके db
. से कनेक्ट करने का प्रयास करता है , लेकिन यह कनेक्शन प्राप्त करने के लिए तैयार नहीं है। तो आप db
check चेक कर सकते हैं कनेक्शन के लिए प्रतीक्षा करने के लिए ऐप सेवा में स्वास्थ्य की स्थिति। यहाँ मेरा समाधान है, इसने मेरी समस्या का समाधान किया। :)महत्वपूर्ण:मैं docker-compose संस्करण 2.1 का उपयोग कर रहा हूँ।
version: '2.1'
services:
my-app:
build: .
command: su -c "python manage.py runserver 0.0.0.0:8000"
ports:
- "8000:8000"
depends_on:
db:
condition: service_healthy
links:
- db
volumes:
- .:/app_directory
db:
image: postgres:10.5
ports:
- "5432:5432"
volumes:
- database:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
volumes:
database:
इस मामले में .sh फ़ाइल बनाना आवश्यक नहीं है। मुझे आशा है कि यह आप लोगों की मदद करेगा;) cya