SadServers
  • Scenarios
  • Labs
    All Labs Linux & Bash Web Servers Databases Data Processing Docker Kubernetes CI/CD Infrastructure as Code Tooling / Applications
  • Dashboard
  • Solutions
    For Individuals For Businesses
  • Ranking
  • Newsletter
  • Documentation
    FAQ Support Pro Accounts Pro+ Accounts Business Accounts Gift API CLI/TUI Privacy Troubleshooting Interviews
  • Blog
  • Pricing
  • Gift
    Gift Purchase Gift Redeem
  • About
Log In - Sign Up
  1. Labs
  2. Supervisord
  3. Cheatsheet

Guide

Concepts and learning path

Troubleshooting

Failure modes and fixes

Cheatsheet

Commands to keep handy

Supervisord cheatsheet

supervisorctl

CommandDescription
supervisorctl statusStatus of all programs
supervisorctl status myappStatus of one program
supervisorctl start myappStart a program
supervisorctl stop myappStop a program
supervisorctl restart myappRestart a program
supervisorctl start allStart every program
supervisorctl tail -f myappFollow stdout log
supervisorctl tail myapp stderrView stderr log
supervisorctl rereadReload config files from disk
supervisorctl updateApply config changes (add/remove programs)

Daemon control

CommandDescription
supervisord -c /etc/supervisor/supervisord.confStart daemon with config
supervisorctl shutdownStop supervisord and all children
systemctl status supervisorCheck service (when managed by systemd)
ps aux | grep supervisordConfirm daemon is running

Config file locations

PathDescription
/etc/supervisor/supervisord.confMain config (Debian/Ubuntu)
/etc/supervisor/conf.d/*.confPer-app program configs
/var/log/supervisor/Default supervisord log directory
/var/run/supervisor.sockDefault RPC unix socket

Example program config

# /etc/supervisor/conf.d/myapp.conf [program:myapp] command=/opt/myapp/venv/bin/gunicorn -w 4 app:app directory=/opt/myapp user=deploy autostart=true autorestart=unexpected stdout_logfile=/var/log/supervisor/myapp.log stderr_logfile=/var/log/supervisor/myapp.err environment=PATH="/opt/myapp/venv/bin",DJANGO_SETTINGS_MODULE="app.settings"

Example group config

[group:workers] programs=celery-worker,celery-beat # Control the group: # supervisorctl start workers:*

Pro tips

  • After editing config: supervisorctl reread then update
  • Use absolute paths in command= — supervisord has a minimal PATH
  • autorestart=unexpected avoids restart loops on intentional exits
  • For new deployments on Linux, consider a systemd unit instead

Practice scenarios

Hands-on Supervisord scenarios on live Linux VMs: supervisord

SadServersSadServers

Real-world Linux and DevOps scenarios for hands-on learning and technical assessment.

Uptime Robot ratio (30 days)
Product
  • Scenarios
  • For Individuals
  • For Businesses
  • Pricing
Resources
  • FAQ
  • Blog
  • Newsletter
Company
  • About Us
  • Support
  • Privacy Policy
  • Terms of Service
  • Contact
Connect With Us
info@sadservers.com

Made in Canada 🇨🇦
Updated: 2026-06-13 16:06 UTC – 2d2950a