2
votes

Comment démarrer d'autres serveurs automatiquement après le démarrage du serveur Django

J'utilise différents serveurs avec Django Server. Par exemple, serveur MongoDB et Celery [commande]

Je veux demander comment puis-je exécuter d'autres commandes CMD automatiquement chaque fois que je démarre "**

python manage.py runserver

** "


3 Réponses :


3
votes

Dépend du système d'exploitation que vous utilisez, sur mon Ubuntu pour le développement local, je fais ceci:

Créer un script .sh. Par exemple start_project.sh avec ce code:

cd /path/to/project
source /venv/bin/activate
python manage.py runserver & celery -A project worker --loglevel=debug

Et puis lancez simplement bash start_project.sh Vous pouvez également ajouter plus de commandes pour commencer séparées par &


0 commentaires

1
votes

Vous devriez écrire un script shell contenant des commandes pour démarrer chaque service et ensuite l'utiliser pour lancer vos projets. Par exemple, voici un exemple:

sudo service mongodb start
celery -A worker appname.celery
python manage.py runserver 0.0.0.0:80 > /dev/null 2>&1 &


0 commentaires

0
votes

Parce que vous utilisez le terme CMD, je suppose que vous utilisez un système d'exploitation Windows. Je dirais alors que vous avez probablement l'installation du service mongoDB? (sinon, réinstallez mongoDB en tant que service).

Par défaut réglé sur autostart (modifiable en non-autostart). Si vous avez changé le service pour mongoDB en méthode de démarrage manuel, vous pouvez le démarrer dans CMD en tant que

net start mongoDB

Je n'utilise pas / sais ce qu'est "Celery" mais rapide Google fait cela ressemble à une sorte de message que. Ce qui, à mon avis, devrait être ou au moins devrait avoir une installation de service, auquel cas vous devriez l'utiliser et ensuite utiliser le démarrage automatique / manuel comme décrit pour mongoDB.


0 commentaires