Damp

Migrate from Laragon

Switch from Laragon to DAMP on Windows

Switch from Laragon to DAMP and get DevContainers, service isolation, and cross-platform compatibility.

Migration Process

Stop Laragon Services

Stop all services to free ports:

  1. Open Laragon
  2. Click "Stop All" button
  3. Right-click system tray icon → "Exit"
  4. Verify ports are free:
    netstat -ano | findstr ":80 :443"
    # Should return nothing

Open DAMP

Launch DAMP and click "Add Site" button.

Select "Existing Project"

Choose the Existing Project option.

Configure Site

Fill in the details:

FieldValueExample
NameYour site namemy-laragon-site
PathYour Laragon projectC:\laragon\www\my-project
PHP VersionYour current PHP8.3

Install Services

Install services your project uses:

ServiceInstall?Why?
MySQL✅ RequiredIf using database
PostgreSQL✅ If neededIf using PostgreSQL
Redis✅ RecommendedFor caching/queues
Mailpit✅ RecommendedFor email testing

Go to Services page → Click "Install" for each needed service.

Export Laragon Database

Export your existing data:

  1. Open Laragon
  2. Click "Database""Open" (HeidiSQL)
  3. Right-click database → "Export database as SQL"
  4. Save as backup.sql

Import to DAMP

Import data to DAMP MySQL:

# Inside VS Code DevContainer terminal
mysql -h damp-mysql -u damp -pdamp damp < backup.sql

Update Configuration

Open project in VS Code DevContainer and update .env or config.php:

Laravel .env:

# Old Laragon config
DB_HOST=127.0.0.1
DB_DATABASE=my_database

# New DAMP config
DB_HOST=damp-mysql
DB_DATABASE=damp
DB_USERNAME=damp
DB_PASSWORD=damp

# Redis (if using)
REDIS_HOST=damp-redis

# Mail
MAIL_HOST=damp-mailpit
MAIL_PORT=1025

Plain PHP:

// Old Laragon
$host = '127.0.0.1';

// New DAMP
$host = 'damp-mysql';

Update Hosts (Optional)

Laragon managed your hosts file. With DAMP:

  1. Sites use *.local domains
  2. Caddy handles routing automatically
  3. No hosts file editing needed!

Test Your Site

  1. Open in VS Code: Click "Open in VS Code" in DAMP
  2. Reopen in Container when prompted
  3. Browse to https://yoursite.local
  4. Install SSL certificate from DAMP

What Changed

File Structure

DAMP adds DevContainer files to your existing project:

my-project/
├── .devcontainer/          ← Added by DAMP
│   ├── devcontainer.json
│   ├── Dockerfile
│   └── php.ini
├── .vscode/                ← Added by DAMP
│   ├── launch.json
│   └── settings.json
└── [Your existing Laragon files remain]

Service Access

Laragon:

$host = '127.0.0.1';  // Localhost
$port = 3306;

DAMP:

$host = 'damp-mysql';  // Container name
$port = 3306;

Domain Names

Laragon:

http://my-project.test

DAMP:

https://my-project.local  # HTTPS by default

Key Differences

Service Management

Laragon: Start/stop all services together

DAMP: Install/uninstall services per project

Port Assignment

Laragon: Fixed ports (80, 443, 3306, etc.)

DAMP: Auto-assigned ports (no conflicts!)

Troubleshooting


Keep Laragon Installed

You can keep Laragon for non-DevContainer projects - just don't run both on ports 80/443 simultaneously!