Files
Archive/QUICKSTART.md

5.3 KiB
Raw Permalink Blame History

🚀 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

# 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

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 .env for your environment

Pro Tips

  1. Use the management script - It's easier than raw docker commands
  2. Monitor logs - Keep an eye on service logs during first startup
  3. Wait for database - Services may restart a few times waiting for DB
  4. Backup regularly - Use ./docker-manage.sh backup before changes
  5. Check resource usage - Run docker stats to monitor performance

Need more help? Check DOCKER_SETUP.md for comprehensive documentation.