Mysql
 sql >> Database >  >> RDS >> Mysql

'Impossibile connettersi al server MySQL su \'db\' Django-Restframework con Mysql nella finestra mobile

Ciò può verificarsi se il contenitore dell'applicazione (web qui) inizia prima che il database sia completamente inizializzato.

Devi aspettare fino a db il servizio viene avviato (più precisamente, fino a quando mysql sta accettando connessioni) prima di avviare l'applicazione (python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:8000 ).

Per questo, puoi usare wait-for-it.sh script (controlla https://docs.docker.com/compose/startup-order/ ) prima di eseguire i comandi Python. In alternativa, puoi utilizzare una politica di riavvio sul tuo web servizio (https://docs.docker.com/compose/compose-file/ #restart_policy ) per riavviare automaticamente il servizio (fino a quando il database non è attivo).