Blog

Brad Wood

January 29, 2018

Spread the word


Share your thoughts

A common question we get now is how to take a CommandBox server and wrap it in a Windows service so it starts automatically at boot time.  This is ideal for production use or just a dev site that you always want to stay running.  With this new screencast, you will learn how to take any CommandBox server and install it as a Windows service using a free tool called NSSM.

https://nssm.cc/

 

Add Your Comment

(6)

Dec 06, 2018 06:31:32 UTC

by Mark Drew

This is great! very handy! But as it's console, where does the startup log go (in case you need to debug it's start?)

Dec 06, 2018 08:21:26 UTC

by Brad Wood

Hi Mark, the console logs still go the same place they always do. You can view them with "server log" as well as looking at the log file on disk. If you need to debug a server, I recommend just running the start command manually in a terminal to debug it. NSSM also has a logging setting you can enable that will capture ALL the output of CommandBox including any output of the "server start" command itself prior to the actual server process coming online.

Sep 13, 2021 15:36:57 UTC

by Tom

Normally when I run CommandBox, the server context resides under my user profile. When CommandBox runs as a service, does this change the server context? I need to import the password file. I'm having an issue with cfconfig at the moment (you are also helping me via FaceBook Group ColdFusion Programmers at the moment) so until I can get that resolved, I'm setting up the admin manually.

Sep 13, 2021 15:56:52 UTC

by Bradley D Wood

Tom, unless otherwise configured, CommandBox will extract itself into the user home dir. When you run it as a Windows service, it will use the home directory of the Windows System account by default (unless you configure another user for it to run as) which is buried inside your windows/system32 folder. This will give you a totally separate installation of CommandBox with different settings, modules, etc. I recommend you "pin" your server home with a "commandbox.properties" file as described in the docs here: https://commandbox.ortusbooks.com/setup/installation

Nov 18, 2021 10:01:30 UTC

by Marco

Thanks for this post. One question: Isn't it possible to use some setting in the config files to keep a specific commandbox started server alive?

Nov 18, 2021 15:26:46 UTC

by Brad Wood

Marco, NSSM will actually auto-start service by default I think. It's configurable on one of the tabs I didn't show. I actually recommend you look into this CommandBox module that we made after this screencast was produced. It automatically creates the services for you with a single command and works on Windows, Linux, and Mac. https://commandbox-service-manager.ortusbooks.com/ It is a paid module ($49)

Recent Entries

BoxLang 1.0.0 RC1 Launched

BoxLang 1.0.0 RC1 Launched

After nearly a year of relentless iteration, rigorous testing, blood, sweat, lots of praying, tears, and over 1,000 resolved tickets, we proudly announce the first Release Candidate (RC1) of BoxLang! With 27 beta versions behind us, we are now on the final stretch toward the official 1.0 release.

Luis Majano
Luis Majano
February 18, 2025
Exploring BoxLang: A Modern Scripting Language for the JVM!

Exploring BoxLang: A Modern Scripting Language for the JVM!

The amazing CFML community leader Ray Camden recently shared his thoughts on BoxLang, a dynamic scripting language that runs on the Java Virtual Machine (JVM). BoxLang is lightweight (only 6 MB) and doesn’t require Java knowledge, making it accessible to developers from all backgrounds. Whether you're building CLI scriptsweb applications, or experimenting with serverless architecture, BoxLang has you covered.

Maria Jose Herrera
Maria Jose Herrera
February 14, 2025
Get a Free BoxLang+ License with Your ITB 2025 Ticket!

Get a Free BoxLang+ License with Your ITB 2025 Ticket!

At Ortus Solutions, we are dedicated to delivering the best experience for our Into the Box attendees. This year’s event will be an exciting opportunity to explore BoxLang and modern CFML development, and we want to ensure that attending in person is even more rewarding.

Maria Jose Herrera
Maria Jose Herrera
February 07, 2025