← ClaudeAtlas

lando-to-dockerlisted

Migrate a Drupal project's local dev environment from Lando to Docker Compose + a Makefile (Traefik reverse proxy, *.dev.localhost, PHP-FPM + Apache, MariaDB, Redis, Adminer, Mailpit). Use when the user mentions replacing Lando, a ".lando.yml", "lando to docker", "lando to make", setting up the Makefile / Docker dev environment, or needs the Makefile that the d11 / gulp-to-vite / sass-migrator / php-docker-upgrade skills require. Produces the docker/ tree, docker-compose.yml, Makefile, and Drupal glue; handles single-site vs multisite and Gulp vs Vite/Tailwind frontends. IMPORTANT: after migration all commands MUST go through Makefile targets, never Lando or the host.
JMAILLY/claude-migration-skills · ★ 0 · Web & Frontend · score 70
Install: claude install-skill JMAILLY/claude-migration-skills
# Lando → Docker Compose + Makefile (Drupal local dev) This is the **upstream prerequisite** skill: it produces the `Makefile` (and the Dockerized environment behind it) that `d11`, `gulp-to-vite`, `sass-migrator` and `php-docker-upgrade` all depend on. The target architecture is the one used across the reference projects (ginger-cebtp, sterimed, akena): ``` Traefik (shared, external) ──► apache (httpd:2.4-alpine, proxy_fcgi) *.dev.localhost, TLS └─► php (php:8.4-fpm) ├─ db (mariadb:11.8) ├─ redis (redis:7-alpine) ├─ node (node:22-alpine, idle) ├─ adminer (adminer:5.4.2) └─ mailpit (axllent/mailpit) ``` ## Golden rule The **Makefile is the single developer entrypoint** — after this migration, every `drush`/`composer`/`npm` runs through a `make` target inside a container, never via `lando` and never on the host. Building that Makefile faithfully is the core deliverable. ## Prerequisites (host, once per machine) A **shared external Traefik** and a local wildcard cert — see `references/compose-traefik.md`: ```bash docker network create traefik-public mkcert -install && mkcert "*.dev.localhost" # feed cert to the Traefik instance ``` `*.dev.localhost` resolves to 127.0.0.1 automatically — no `/etc/hosts` edits. If the user has no shared Traefik,