Docker Deployment
Quick Start
Section titled “Quick Start”Option 1: Docker Compose (Recommended)
Section titled “Option 1: Docker Compose (Recommended)”docker-compose up -d # Build and startdocker-compose logs -f # View logsdocker-compose down # StopOption 2: Docker Only
Section titled “Option 2: Docker Only”docker build -t snapcode .docker run -d -p 8000:8000 --name snapcode snapcodeOption 3: With Nginx
Section titled “Option 3: With Nginx”docker-compose --profile with-nginx up -dManagement
Section titled “Management”docker ps # View running containersdocker-compose logs -f snapcode # View logsdocker-compose restart snapcode # Restartdocker exec -it snapcode sh # Shell accessMonitoring
Section titled “Monitoring”docker stats snapcode # Container statsdocker inspect --format='{{.State.Health.Status}}' snapcode # Health checkdocker logs --tail 100 snapcode # Recent logsProduction Setup
Section titled “Production Setup”Environment Variables
Section titled “Environment Variables”cat > .env << EOFPORT=8000ENVIRONMENT=productionEOFResource Limits (docker-compose.override.yml)
Section titled “Resource Limits (docker-compose.override.yml)”version: '3.8'services: snapcode: deploy: resources: limits: cpus: '0.5' memory: 512MFeatures
Section titled “Features”- ✅ Isolated environment
- ✅ Easy deployment
- ✅ Auto-restart
- ✅ Health checks
- ✅ Resource limits
- ✅ Scalable
Troubleshooting
Section titled “Troubleshooting”# Check logsdocker-compose logs snapcode
# Rebuilddocker-compose up -d --build --force-recreate
# Clean updocker system prune -a