Skip to content

Bare Metal Overview

Terminal window
sudo apt install supervisor
sudo cp snapcode.conf /etc/supervisor/conf.d/
sudo supervisorctl start snapcode

✅ Native Python, simple INI config, auto-restart, log management

Terminal window
npm install -g pm2
pm2 start server.py --name snapcode --interpreter python3
pm2 save && pm2 startup

✅ Cluster mode, zero-downtime reload, built-in monitoring

Client → Reverse Proxy → Backend Server(s)

Benefits: SSL termination, load balancing, caching, security

FeatureNginxTraefikHAProxy
PerformanceHighMediumHighest
ConfigSimpleYAMLComplex
Auto SSLManual✅ Built-inManual
DockerManual✅ AutoManual
Best forGeneralMicroservicesHigh traffic
StackComponentsBest For
SimpleSupervisor + NginxEasy to learn, production ready
ModernPM2 + TraefikAuto SSL, zero-downtime
PerformanceSupervisor + HAProxyMaximum performance, enterprise
Terminal window
# 1. Start app with Supervisor
sudo supervisorctl start snapcode
# 2. Setup Nginx
sudo cp snapcode.conf /etc/nginx/sites-available/
sudo ln -s /etc/nginx/sites-available/snapcode.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
# 3. Setup SSL
sudo certbot --nginx -d snapcode.yourdomain.com