Railway

Deploy KMS Tools

Manages, monitors, and generates activation scripts for Windows & Office.

Deploy KMS Tools

Just deployed

/app/.data

Deploy and Host KMS Tools on Railway

KMS Tools is an all-in-one KMS toolbox that provides KMS server detection and status monitoring, along with activation script generation for Windows, Windows Server, and Office. It includes regular server monitoring and supports English, Simplified Chinese, and Traditional Chinese interfaces.

About Hosting KMS Tools

Hosting KMS Tools on Railway involves deploying the application from its Dockerfile or the ikxin/kms-tools:latest Docker image. The application listens on port 3000 and binds to 0.0.0.0 so it can receive Railway traffic. A persistent Railway Volume is required at /app/.data to preserve application data across deployments and restarts. The application also uses configurable monitoring variables to define KMS servers and the monitoring interval. Railway's public networking exposes the application through an HTTPS domain, while Docker handles the application build and runtime configuration. No external database service is documented for this deployment.

Common Use Cases

  • Monitoring the availability and status of configured KMS servers
  • Generating KMS-related activation scripts for supported Microsoft products
  • Operating a multilingual KMS server detection and monitoring dashboard

Dependencies for KMS Tools

  • Docker image or GitHub repository containing the KMS Tools application
  • Persistent Railway Volume mounted at /app/.data
  • Configured KMS server monitoring list

Deployment Dependencies

Implementation Details

Docker

KMS Tools can be deployed using the provided Docker image:

ikxin/kms-tools:latest

The repository also includes a Dockerfile at:

./Dockerfile

When deploying from the GitHub repository, Railway can automatically build the application using this Dockerfile.

Public Networking

The application listens on port 3000:

ProtocolProxy TypeTarget PortPurpose
HTTPHTTP Proxy3000KMS Tools web interface

The application should bind to all interfaces:

PORT=3000
HOST=0.0.0.0

After deployment, generate a Railway domain under Settings → Networking to access the application over HTTPS.

Environment Variables
VariableRequiredDescription
PORTYesInternal application listening port. Set to 3000.
HOSTYesNetwork interface the application binds to. Set to 0.0.0.0 for Railway.
NUXT_MONITOR_LISTYesComma-separated list of KMS servers to monitor.
NUXT_MONITOR_INTERVALYesInterval between KMS server monitoring checks, in seconds.

Raw Editor example:

PORT=3000
HOST=0.0.0.0
NUXT_MONITOR_LIST=kms.org.cn,win.freekms.cn
NUXT_MONITOR_INTERVAL=10

Customize NUXT_MONITOR_LIST with the KMS servers you want the application to monitor.

Persistent Storage

Persistent storage is required for KMS Tools.

To add the volume:

  1. Open the KMS Tools service in Railway.
  2. Go to Settings.
  3. Open Volumes.
  4. Add a volume.
  5. Set the mount path to:
/app/.data

The volume preserves application data stored by KMS Tools across service restarts and redeployments.

Build & Start

When deploying from the supplied GitHub repository, configure Railway to use:

Builder: Dockerfile
Root Directory: /
Dockerfile Path: ./Dockerfile
Runtime: Docker

The documented start command is:

node .output/server/index.mjs

If the Docker image already defines the appropriate runtime configuration, no additional build configuration is required beyond the supplied Docker deployment settings.

Accessing the Application
  1. Deploy KMS Tools as a Railway service.
  2. Configure the required environment variables.
  3. Add a Railway Volume mounted at /app/.data.
  4. Deploy the service using the Dockerfile or ikxin/kms-tools:latest.
  5. Open Settings → Networking.
  6. Generate a Railway domain for port 3000.
  7. Open the generated HTTPS URL to access KMS Tools.

The application provides a web interface for KMS server detection, monitoring, and the other documented toolbox features.

Why Deploy KMS Tools on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying KMS Tools on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


Template Content

More templates in this category

View Template
NEW
Pyroscope profiling
Protected continuous profiling with durable Pyroscope storage.

Anton Orel
1
View Template
SigOnly
Deploy SigNoz with a working demo app & config in one click

zoeyjones
22
View Template
Unwrapped Spotify Music Stats
Unwrapped Spotify Music Stats, Estatísticas de músicas disponíveis

Jorge Henrique
1