Taylor’s Tracker (Production/Development)
Purpose: Custom web applicationStack: tracker-prod (production), tracker-dev (development)Image: nginx:alpinePlacement: Worker nodes (3 replicas for production)
Production Configuration:
replicas: 3
placement:
constraints: [node.role == worker]
volumes:
- /mnt/swarm-data/webservers/production/nginx/nginx.conf
- /mnt/swarm-data/webfiles/production/taylors-development
Development Configuration:
ports: ["8181:80"]
volumes:
- /mnt/swarm-data/webservers/testing/nginx/nginx.conf
- /mnt/swarm-data/webfiles/testing/taylors-development
Access:
- Production:
https://tracker.bitfrost.me
- Development:
http://[node-ip]:8181
Nginx Configuration Patterns
Standard Nginx Setup:
volumes:
# Main configuration
- nginx.conf:/etc/nginx/nginx/nginx.conf:ro
# Virtual host configuration
- default.conf:/etc/nginx/conf.d/default.conf:ro
# Web content
- web-content:/usr/share/nginx/html:ro
Environment Separation:
- Production:
/mnt/swarm-data/webservers/production/
- Testing:
/mnt/swarm-data/webservers/testing/
- Web Files: Separate directory structure for content