Mysql
 sql >> Base de données >  >> RDS >> Mysql

'Impossible de se connecter au serveur MySQL sur \'db\' Django-Restframework avec Mysql dans le menu fixe

Cela peut arriver si votre conteneur d'application (web ici) commence avant que votre base de données ne soit complètement initialisée.

Vous devez attendre db service est démarré (plus précisément, jusqu'à ce que mysql accepte les connexions) avant de démarrer votre application (python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:8000 ).

Pour cela, vous pouvez utiliser wait-for-it.sh script (vérifiez https://docs.docker.com/compose/startup-order/ ) avant d'exécuter vos commandes python. Vous pouvez également utiliser une politique de redémarrage sur votre web service (https://docs.docker.com/compose/compose-file/ #restart_policy ) pour redémarrer automatiquement votre service (jusqu'à ce que la base de données soit active).