For AI agents: the complete documentation index is available at https://www.jumpserver.com/docs/llms.txt, the full documentation bundle is available at https://www.jumpserver.com/docs/llms-full.txt, and this page is available as Markdown at https://www.jumpserver.com/docs/operations/cli-tools.md.
๐ŸŽ‰ JumpServer v5.1.1 is available. See what's new โ†’

Command-Line Tools

Each JumpServer installation ships with the jmsctl management script. It wraps the Docker Compose project and is the supported way to install, start, stop, back up, restore, and upgrade the platform. This page lists the most useful commands and their behavior.

root@jumpserver-host:~# jmsctl --help

JumpServer Deployment Management Script

Usage:
  ./jmsctl.sh [COMMAND] [ARGS...]
  ./jmsctl.sh --help

Installation Commands:
  install           Install JumpServer
  upgrade           Upgrade JumpServer

Management Commands:
  config            Configuration  Tools
  start [--skip-kotl]   Start     JumpServer
  stop [--skip-kotl]    Stop      JumpServer
  restart [--skip-kotl] Restart   JumpServer
  status [--skip-kotl]  Check     JumpServer
  down              Offline   JumpServer
  uninstall         Uninstall JumpServer

More Commands:
  load_image        Loading docker image
  backup_db         Backup database
  backup_no_audit   Backup database without audit data
  backup_audit      Backup audits tables
  restore_db [file]        Data recovery through database backup file
  raw               Execute the original docker compose command
  tail [service]    View log

Before you begin

  • Log in to the JumpServer host with an account that can run Docker commands.
  • Change to the JumpServer installation directory before running the script. The directory is the extracted installer or upgrade package, commonly /opt/jumpserver.

Service commands

CommandDescription
./jmsctl.sh installInstall JumpServer services and initialize the database
./jmsctl.sh startStart all enabled services
./jmsctl.sh stopStop all services
./jmsctl.sh restartRestart all services
./jmsctl.sh statusShow the running state of the services
./jmsctl.sh downTake the services offline, including the Docker network
./jmsctl.sh uninstallRemove the services
./jmsctl.sh --helpPrint the command reference

Start and stop commands are also the way to apply configuration changes; there is no hot reload. See Configuration.

Warning

stop, down, restart, and uninstall interrupt active sessions. Run them in a maintenance window and notify users first.

Data commands

CommandDescription
./jmsctl.sh backup_dbBack up the database and the active configuration
./jmsctl.sh restore_db <file>Restore the database from a backup file
./jmsctl.sh tail [service]Follow the log of one service, or of all services
./jmsctl.sh load_imageLoad Docker images from the offline package
./jmsctl.sh raw <args>Run an arbitrary docker compose command
./jmsctl.sh upgradeUpgrade the installation to the packaged version

Back up before any upgrade or restore, and verify the backup file before starting the operation. The full procedure is in Backup & Restore.

Configuration helper

./jmsctl.sh config edits common settings with guided prompts:

./jmsctl.sh config --help
SubcommandDescription
config initInitialize the configuration file
config portConfigure the JumpServer service ports
config sslConfigure Web SSL
config envConfigure environment variables
config ntpConfigure NTP time synchronization

Changes made by the helper are written to config.txt and take effect after ./jmsctl.sh restart.

Examples

Check the service state and follow Core logs:

./jmsctl.sh status
./jmsctl.sh tail core

Create a database backup, then restore it later:

./jmsctl.sh backup_db
./jmsctl.sh restore_db /data/jumpserver/db_backup/jumpserver-v5.0.0-2026-10-28_10:00:00.dump

In an enterprise installation, the host management service is managed together with the containers:

./jmsctl.sh tail jdmc