2017-01-09 1 views
1

CONTEXTE QUELQUES:mysql et gunicorn connexions ouvertes dans le même port

J'ai créé une application django et je suis au point où je veux déployer. J'ai regardé plusieurs options, y compris wsgi mais depuis la nouvelle mise à jour de mac os est arrivé, je ne peux pas installer mod_wsgi parce que je n'ai pas apxs ou apxs2 sur mon ordinateur, (Une discussion sur le Web au sujet des droits d'écriture dans les fichiers, Si vous connaissez plus et je voudrais expliquer, s'il vous plaît faire.)

Cependant, je regardais d'autres options pour essayer de déployer l'application et je veux utiliser Heroku. J'ai suivi le guide de dev pour le déploiement de Django jusqu'à ce que je suis arrivé à la partie où je test à l'aide « heroku web local ».
LA QUESTION

Le problème vient ici parce que le serveur MySQL local utilise le même port que le gunicorn essaie également d'utiliser. J'ai trouvé des postes similaires sur stackoverflow à propos de « connexions utilisées », mais aucun n'a montré comment changer les ports pour gunicorn. J'ai trouvé quelques ports ouverts disponibles sur mon localhost, mais chaque fois que j'essayer de changer les ports de MySQL à ceux-ci, les temps de connexion sur. Par conséquent, je voudrais savoir comment changer le port auquel le Gunicorn se connecte afin qu'il n'essaie pas de se connecter au même port par défaut que le mysql qui est 3306.

Je servais le projet django avec le serveur il est venu avec et la base de données que j'utilise est mysql pour la production locale. J'essaye de me connecter localement avec gunicorn et Heroku maintenant parce que je sens que si ça va bien localement ça ira probablement quand j'essayerai de mettre le projet en ligne.

erreur donné

10:38:52 PM web.1 | [2017-01-08 22:38:52 -0500] [83200] [ERROR] Connection in use: ('0.0.0.0', 3306) 
10:38:52 PM web.1 | [2017-01-08 22:38:52 -0500] [83200] [ERROR] Retrying in 1 second. 
10:38:53 PM web.1 | [2017-01-08 22:38:53 -0500] [83200] [ERROR] Connection in use: ('0.0.0.0', 3306) 
10:38:53 PM web.1 | [2017-01-08 22:38:53 -0500] [83200] [ERROR] Retrying in 1 second. 
10:38:54 PM web.1 | [2017-01-08 22:38:54 -0500] [83200] [ERROR] Connection in use: ('0.0.0.0', 3306) 
10:38:54 PM web.1 | [2017-01-08 22:38:54 -0500] [83200] [ERROR] Retrying 

en 1 seconde.

MON PROFIL

web: gunicorn project_name.wsgi.application --log-file - 

Le gunicorn se connecte quand j'arrête le serveur MySQL, mais je reçois une exception puisque le projet ne peut pas se connecter aux bases de données.

--Thank vous

Répondre

0

Vous pouvez spécifier le port pour gunicorn comme suit: -

gunicorn --bind 127.0.0.1:8000

Donc, fondamentalement, la commande complète serait

gunicorn --bind 127.0.0.1:8000 myproject.wsgi:application

Vous pouvez remplacez 8000 par l'un de vos numéros de port souhaités.

0

Pour installer mod_wsgi sur voir MacOS X:

Tout ce que vous devez faire est pip install mod_wsgi.

Vous pouvez ensuite utiliser mod_wsgi-express sur la ligne de commande pour l'exécuter sur un port non privilégié, avec toute la configuration effectuée pour vous.

Vous pouvez également l'intégrer à une installation Apache existante et la configurer manuellement vous-même en exécutant mod_wsgi-express module-config et en prenant ce qu'elle génère et l'ajouter à la configuration Apache principale du système. Ajoutez ensuite votre configuration d'application WSGI spécifique au fichier de configuration Apache.