146 lines
3.4 KiB
Markdown
146 lines
3.4 KiB
Markdown
# 🚀 IGNY8 Go-Live Checklist
|
|
|
|
**Date:** January 20, 2026
|
|
**Purpose:** Quick reference for launching IGNY8 to production
|
|
|
|
---
|
|
|
|
## ✅ Pre-Launch Checklist
|
|
|
|
### Infrastructure Ready
|
|
- [ ] PostgreSQL running and accessible
|
|
- [ ] Redis running and accessible
|
|
- [ ] Caddy configured with SSL for all domains
|
|
- [ ] DNS records pointing to server
|
|
- [ ] Firewall configured (ports 80, 443 open)
|
|
|
|
### Application Ready
|
|
- [ ] Production `.env` configured with real secrets
|
|
- [ ] All API keys set (OpenAI, Stripe, etc.)
|
|
- [ ] Django `SECRET_KEY` is unique and secure
|
|
- [ ] `DEBUG=False` in production
|
|
- [ ] CORS and ALLOWED_HOSTS configured
|
|
|
|
### Operational Scripts Ready
|
|
- [x] `/data/app/igny8/scripts/ops/backup-db.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/backup-full.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/restore-db.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/deploy-production.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/deploy-staging.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/rollback.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/health-check.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/sync-prod-to-staging.sh`
|
|
- [x] `/data/app/igny8/scripts/ops/log-rotate.sh`
|
|
|
|
### Staging Environment (Optional but Recommended)
|
|
- [x] `docker-compose.staging.yml` created
|
|
- [x] `.env.staging.example` created
|
|
- [ ] Copy to `.env.staging` and configure
|
|
- [ ] Create staging database
|
|
- [ ] Configure staging DNS records
|
|
|
|
---
|
|
|
|
## 🏁 Go-Live Steps
|
|
|
|
### Step 1: Create Initial Backup
|
|
```bash
|
|
/data/app/igny8/scripts/ops/backup-db.sh pre-deploy
|
|
```
|
|
|
|
### Step 2: Verify Health
|
|
```bash
|
|
/data/app/igny8/scripts/ops/health-check.sh
|
|
```
|
|
|
|
### Step 3: Set Up Automated Backups
|
|
```bash
|
|
# Install cron job
|
|
sudo cp /data/app/igny8/scripts/ops/igny8-cron /etc/cron.d/igny8
|
|
sudo chmod 644 /etc/cron.d/igny8
|
|
|
|
# Verify cron
|
|
sudo crontab -l -u root
|
|
```
|
|
|
|
### Step 4: Test Backup & Restore (Optional)
|
|
```bash
|
|
# Create test backup
|
|
/data/app/igny8/scripts/ops/backup-db.sh daily
|
|
|
|
# Verify backup exists
|
|
ls -la /data/backups/daily/
|
|
```
|
|
|
|
---
|
|
|
|
## 📋 Daily Operations
|
|
|
|
### Check System Health
|
|
```bash
|
|
/data/app/igny8/scripts/ops/health-check.sh
|
|
```
|
|
|
|
### View Logs
|
|
```bash
|
|
# Backend logs
|
|
docker logs -f igny8_backend
|
|
|
|
# All app logs
|
|
docker compose -f /data/app/igny8/docker-compose.app.yml -p igny8-app logs -f
|
|
```
|
|
|
|
### Container Status
|
|
```bash
|
|
docker compose -f /data/app/igny8/docker-compose.app.yml -p igny8-app ps
|
|
```
|
|
|
|
---
|
|
|
|
## 🚨 Emergency Procedures
|
|
|
|
### Immediate Rollback
|
|
```bash
|
|
/data/app/igny8/scripts/ops/rollback.sh
|
|
```
|
|
|
|
### Restore Database
|
|
```bash
|
|
# List available backups
|
|
ls -la /data/backups/
|
|
|
|
# Restore from latest
|
|
/data/app/igny8/scripts/ops/restore-db.sh /data/backups/latest_db.sql.gz
|
|
```
|
|
|
|
### Restart All Services
|
|
```bash
|
|
docker compose -f /data/app/igny8/docker-compose.app.yml -p igny8-app restart
|
|
```
|
|
|
|
---
|
|
|
|
## 📁 Key File Locations
|
|
|
|
| Item | Location |
|
|
|------|----------|
|
|
| Production Compose | `/data/app/igny8/docker-compose.app.yml` |
|
|
| Staging Compose | `/data/app/igny8/docker-compose.staging.yml` |
|
|
| Production Env | `/data/app/igny8/.env` |
|
|
| Staging Env | `/data/app/igny8/.env.staging` |
|
|
| Ops Scripts | `/data/app/igny8/scripts/ops/` |
|
|
| Backups | `/data/backups/` |
|
|
| Logs | `/data/logs/` |
|
|
|
|
---
|
|
|
|
## 📞 Support Contacts
|
|
|
|
- **Documentation:** `/data/app/igny8/docs/`
|
|
- **Deployment Guide:** `/data/app/igny8/docs/50-DEPLOYMENT/`
|
|
- **Operations Guide:** `/data/app/igny8/docs/50-DEPLOYMENT/DEVOPS-OPERATIONS-GUIDE.md`
|
|
|
|
---
|
|
|
|
**You're ready to go live! 🎉**
|