5.3 KiB
5.3 KiB
🚀 Habland Quick Start Guide
Get all services running in under 5 minutes.
Prerequisites Check
# Check Docker is installed and running
docker --version
docker compose version
# Check available resources
docker info | grep -E 'CPUs|Total Memory'
Minimum Requirements:
- Docker Engine 20.10+
- Docker Compose v2.0+
- 8GB RAM
- 20GB disk space
1️⃣ Initial Setup (First Time Only)
# Navigate to project
cd /Users/matt/DEV/habland
# Create environment file
cp .env.example .env
# Optional: Edit configuration
nano .env
2️⃣ Create Docker Network
# Create the shared network
docker network create habbo-network
3️⃣ Start Services
Option A: Using Management Script (Recommended)
# Make script executable (first time only)
chmod +x docker-manage.sh
# Start all services
./docker-manage.sh start
# Or start specific stack
./docker-manage.sh start arcturus # Arcturus + Cool UI
./docker-manage.sh start havana # Havana stack
./docker-manage.sh start kepler # Kepler emulator
./docker-manage.sh start roseau # Roseau stack
Option B: Using Docker Compose Directly
# Start all services
docker compose up -d
# Or start specific services
docker compose up -d unified-db arcturus-emulator cool-ui asset-server
4️⃣ Verify Services
# Check service status
./docker-manage.sh status
# Or use docker compose
docker compose ps
Expected Output:
- ✅ All services should show "Up" status
- ✅ Database should be healthy
5️⃣ Access Services
Web Interfaces
- Cool UI Client: http://localhost:5174
- Nitro React Client: http://localhost:5173
- Havana Web: http://localhost:8084
- Roseau Client: http://localhost:8082
- AtomCMS: http://localhost
- Admin Panel: http://localhost:3000
- phpMyAdmin: http://localhost:8081
Database
- Host: localhost
- Port: 3306
- User: root
- Password: root
6️⃣ First-Time Configuration
Generate AtomCMS Key
docker compose exec atomcms php artisan key:generate
Check Database Initialization
# Open database shell
./docker-manage.sh db
# Check databases were created
SHOW DATABASES;
# Exit
exit
🎮 Common Operations
View Logs
# All services
./docker-manage.sh logs
# Specific service
./docker-manage.sh logs arcturus-emulator
docker compose logs -f havana-server
Stop Services
# Stop all
./docker-manage.sh stop
# Stop specific stack
./docker-manage.sh stop arcturus
Restart Services
# Restart all
./docker-manage.sh restart
# Restart specific service
docker compose restart arcturus-emulator
🗄️ Database Management
Backup Database
./docker-manage.sh backup
Backup Location: ./backups/habland_backup_TIMESTAMP.sql.gz
Restore Database
./docker-manage.sh restore ./backups/habland_backup_20231207_120000.sql.gz
🔧 Troubleshooting
Services Won't Start
# Check Docker is running
docker info
# Check logs for errors
docker compose logs
# Rebuild problematic service
docker compose build --no-cache [service-name]
docker compose up -d [service-name]
Port Conflicts
# Check what's using a port
lsof -i :3306
# Kill process (if safe)
kill -9 [PID]
Database Connection Failed
# Wait for database to be ready
docker compose exec unified-db mysqladmin ping -proot
# Check database is accessible
docker compose exec unified-db mysql -uroot -proot -e "SHOW DATABASES;"
Out of Memory
# Check resource usage
docker stats
# Increase Docker memory limit (Docker Desktop > Settings > Resources)
# Stop unnecessary services
./docker-manage.sh stop kepler
./docker-manage.sh stop roseau
📊 Service Port Reference
| Service | Port | Description |
|---|---|---|
| unified-db | 3306 | MariaDB Database |
| phpmyadmin | 8081 | Database Admin |
| arcturus-emulator | 30000 | Game Server |
| havana-server | 12321 | Game Server |
| kepler-server | 12309 | Game Server |
| roseau-server | 37120 | Game Server |
| cool-ui | 5174 | Web Client |
| nitro-react | 5173 | Web Client |
| havana-web | 8084 | Web Client |
| roseau-client | 8082 | Web Client |
| atomcms | 80 | CMS Portal |
| asset-server | 8083 | Game Assets |
| admin-panel | 3000 | Admin Tools |
🆘 Getting Help
Check Service Health
docker compose ps
docker stats --no-stream
Full System Reset (⚠️ Deletes all data)
# Stop and remove everything
docker compose down -v
# Remove network
docker network rm habbo-network
# Start fresh
docker network create habbo-network
docker compose up -d
📚 Next Steps
- Read DOCKER_SETUP.md for detailed documentation
- Configure emulator settings in respective config files
- Import database schemas (if needed)
- Customize
.envfor your environment
⚡ Pro Tips
- Use the management script - It's easier than raw docker commands
- Monitor logs - Keep an eye on service logs during first startup
- Wait for database - Services may restart a few times waiting for DB
- Backup regularly - Use
./docker-manage.sh backupbefore changes - Check resource usage - Run
docker statsto monitor performance
Need more help? Check DOCKER_SETUP.md for comprehensive documentation.