Auto start node.js server on boot

Viewed 147219

Can any node.js experts tell me how I might configure node JS to autostart a server when my machine boots? I'm on Windows

12 Answers

I know there are multiple ways to achieve this as per solutions shared above. I haven't tried all of them but some third party services lack clarity around what are all tasks being run in the background. I have achieved this through a powershell script similar to the one mentioned as windows batch file. I have scheduled it using Windows Tasks Scheduler to run every minute. This has been quite efficient and transparent so far. The advantage I have here is that I am checking the process explicitly before starting it again. This wouldn't cause much overhead to the CPU on the server. Also you don't have to explicitly place the file into the startup folders.

function CheckNodeService ()
{

$node = Get-Process node -ErrorAction SilentlyContinue

if($node)
{
    echo 'Node Running'
}
else
{
    echo 'Node not Running'
    Start-Process "C:\Program Files\nodejs\node.exe" -ArgumentList "app.js" -WorkingDirectory "E:\MyApplication"
    echo 'Node started'

}
}

CheckNodeService

Need to create a batch file inside project folder. Write this code in batch file

@echo off 
start npm start

save batch file with myprojectname.bat

Go to run command and press window + R

Enter this command :- shell:common startup

Press ok then folder will be open.

Folder path like as C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

You will be paste your myprojectname.bat file.

You can check also. Need to system restart.

enter image description here

Related