Maison  >  Questions et réponses  >  le corps du texte

使用 docker 运行 node 需要使用 pm2吗?

使用 docer 应该尽量遵循 one process per container
但是 node 挂了怎么办?
我尝试在容器内使用 Pm2,但是容器一起来就结束了, docker 容器至少需要保证有一个进程,如果没有就会退出.可是我使用pm2为什么不行呢?
如果不能使用 pm2, docker run restart always 可以解决吗?

世界只因有你世界只因有你2703 Il y a quelques jours1606

répondre à tous(4)je répondrai

  • 怪我咯

    怪我咯2017-04-26 09:03:09

    Lorsque pm2 est utilisé dans docker, vous devez remplacer la commande pm2 par la commande pm2-docker afin qu'elle puisse s'exécuter au premier plan. Et personnellement, je pense qu'il n'est pas nécessaire d'utiliser pm2 dans Docker. Si le processus du nœud se bloque, le conteneur correspondant cessera également de fonctionner, donc lors du démarrage du conteneur Docker, ajoutez le paramètre restart=always pour le redémarrer automatiquement

    répondre
    0
  • 大家讲道理

    大家讲道理2017-04-26 09:03:09

    Vous pouvez vous référer à : la documentation d'intégration Docker du site officiel de pm2

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-04-26 09:03:09

    Vous devez vous assurer que pm2 s'exécute au premier plan, ce qui signifie que le processus démarré dans CMD ou ENTRYPOINT dans le fichier docker ne peut pas s'exécuter en mode démon

    répondre
    0
  • 某草草

    某草草2017-04-26 09:03:09

    Vous pouvez spécifier le nombre de cœurs de processeur à utiliser lors de l'exécution d'un conteneur. Si vous n'allouez qu'un seul cœur, il n'est pas nécessaire de démarrer plusieurs processus Node.js, car l'unité de planification de base du processeur est uniquement un thread. un noyau signifie exécuter un processus Node.js et c'est tout

    .

    répondre
    0
  • Annulerrépondre