• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.

Forwarded to devs how to find which domain is using nodejs

johnrdorazio

Basic Pleskian
Even though I have enabled the nodejs extension, I'm not really using it for any domains for now. Today I wanted to uninstall some old nodejs versions to keep the server clean, but in the manager interface I can't uninstall Node 12 because it says that there is a domain using it. I can't however figure out how to find the domain that would be using it. And probably, there is no domain using it.

I just tested clicking on the NodeJS extension on another domain, and I chose Node v22. However, there isn't an actual Node app on that domain, I just wanted to see if my theory is correct: NodeJS is not actually enabled for the domain, yet in the Manager interface Node 22 is now showing as being used by a domain. I don't see any way of fully disabling Node for that domain now, so I'm kind of stuck with "Node 22 is being used by a domain" even though I'm not really using it at all. So my guess is that it's the same situation with Node 12.


Since for Node 22 I knew which domain I had enabled the extension for, I was able to disable the extension for that domain from the command line:

Bash:
sudo plesk ext nodejs --disable -domain mydomain.com

Now I see that there is no node version associated with that domain, and when I open the NodeJS extension on that domain, I see the option "Enable NodeJS". However, when I go to the Manager interface for NodeJS, I still see that there is a domain associated with Node 22. It's like it's impossible to completely disassociate NodeJS from that domain now.

1722124989887.png
So basically I have two questions:

1) How can I find which domain is supposedly "using" a NodeJS version, as indicated in the Manager interface for the NodeJS extension?
2) How can I completely disassociate a domain from a NodeJS version, so that I can uninstall that version from the Manager interface?

Here is the disabled Node 22 on the domain for which I tried enabling then disabling Node 22:

1722125199821.png

Even though I disabled NodeJS for that domain, it still shows as being used for a domain in the Manager interface...
 
I have reported this issue for further analyses by our engineers with issue ID PPS-16405.

It seems that once a domain is associated with nodeJS is cannot be detached. As a result the nodeJS manager interface reports that a version is always "used" by domain. While in reality it might not.

As a workaround you may try to uninstall the nodeJS version via command line: plesk ext nodejs --uninstall -version 22.5.1
 
I was ablel to successfully uninstall the older NodeJS via command line:
Code:
sudo plesk ext nodejs --uninstall 12.22.12
, without any errors. So I believe it was not in fact being used by any domains.
 
Back
Top