Damp

Migrate from Laravel Herd

Switch from Herd to DAMP

Migration Steps

Stop Herd Services

Free ports 80 and 443:

  1. Open Laravel Herd
  2. Click "Stop All Services"
  3. Quit Herd completely

Add Project to DAMP

  1. Launch DAMP
  2. Click "Add Project"
  3. Select "Existing Project"
  4. Configure:
    • Name: Your project name
    • Path: Your project folder (e.g., C:\Herd\my-app)
    • PHP Version: Match your current version

Install Services

Go to Services page and install required services:

  • MySQL - For database
  • Redis - For caching/queues
  • Mailpit - For email testing

Migrate Database (Optional)

If you have existing data, export and import:

Option 1: Command Line

# Export from Herd MySQL
mysqldump -u root -p your_database > backup.sql

# Import to DAMP (inside VS Code DevContainer)
mysql -h damp-mysql -u damp -pdamp damp < backup.sql

Option 2: GUI Tools

Use database management tools like TablePlus, DBeaver, or HeidiSQL:

  1. Export from Herd: Connect to localhost:3306, export database as SQL
  2. Import to DAMP: Get MySQL port from DAMP Services page, connect to localhost:{port}, import SQL file

Connection details for DAMP MySQL:

  • Host: localhost
  • Port: Check DAMP app (Services page)
  • Username: damp
  • Password: damp
  • Database: damp

Update Configuration

Open project in VS Code DevContainer and update .env:

# Update database connection
DB_HOST=damp-mysql
DB_DATABASE=damp
DB_USERNAME=damp
DB_PASSWORD=damp

# Update Redis (if using)
REDIS_HOST=damp-redis

# Update Mail (if using)
MAIL_HOST=damp-mailpit
MAIL_PORT=1025

Test Project

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

Configuration Changes

Generated Files

DAMP adds these files to your project:

your-project/
├── .devcontainer/
│   └── devcontainer.json
├── .vscode/
│   └── launch.json
├── Dockerfile
├── docker-compose.yml
└── .dockerignore

Service Hostnames

Service names are automatically generated by Docker. Get actual service names and ports from the DAMP app (Services page).

Default pattern:

ServiceHerdDAMP
Database127.0.0.1damp-mysql
Redis127.0.0.1damp-redis
Mail127.0.0.1damp-mailpit

Domain Format

ToolFormat
Herdhttp://project.test
DAMPhttps://project.local

Commands

Run commands directly in DevContainer (no wrapper needed):

php artisan migrate
composer install
npm run dev

Troubleshooting

On this page