使用 docker 运行 node 需要使用 pm2吗?
世界只因有你
世界只因有你 2017-04-26 09:01:09
0
4
1680

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

世界只因有你
世界只因有你

répondre à tous(4)
刘奇

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

大家讲道理

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

曾经蜡笔没有小新

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

某草草

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

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal