- A Docker Snapshot, the full container set (Apache, MySQL, Redis, OpenSearch, RabbitMQ) packaged as a .tar.gz that can be re-hydrated locally with
docker compose up. - A Warden Package, the same dryrun re-packaged for Warden, the Magento-friendly local development environment.
What you see when you land here
The page header reads “Staging package downloads (from DRP staging jobs)”. A grey caption underneath says: “Legacy Docker Packages CRUD has been retired. Downloads are now sourced directly from staging package paths.” That caption is important. In earlier versions of DryRunPro, this tab let you create, edit, and delete Docker packages directly. That CRUD model has been retired. Today the tab is read-only, and packages are produced as a side-effect of dryrun builds. To create a package, run a dryrun on the Dryrun Environments tab. To delete one, delete the parent dryrun (or its parent project). The body is a single table with the following columns:| Column | What it shows |
|---|---|
| Staging ID | The integer dryrun ID that produced the package (matches the URL /v2/apps/dryrunpro/staging/<id>). |
| Project | The DryRunPro project name (e.g. “Eggfree Cake Box Ambala”). |
| Cloud Project | The Adobe-side Cloud Project ID handle (e.g. “mowelo3ldewdw”). |
| Branch | The Adobe-side branch the dryrun was cloned from (e.g. “staging”, “master”, “pr-1068”). |
| Docker Snapshot | A blue “Download” link, click to retrieve the .tar.gz. |
| Warden Package | A blue “Download” link for the Warden bundle. |
| Updated | The timestamp when the package was last produced or refreshed. |
| Staging ID | Project | Cloud Project | Branch | Docker Snapshot | Warden Package | Updated |
|---|---|---|---|---|---|---|
| 26 | Eggfree Cake Box Ambala | mowelo3ldewdw | staging | Download | Download | 2026-04-22 09:22:30 |
What is in a Docker snapshot
When you click the Docker Snapshot download link, you get a.tar.gz archive containing:
- A
docker-compose.ymlthat mirrors the dryrun’s container topology (Apache + PHP-FPM, MySQL, Redis, OpenSearch, RabbitMQ). - An
.envfile with the dryrun’s environment variables (sanitised; secrets are stripped or replaced with placeholders). - A
db.sql.gzfile containing the dryrun’s database export. - A
media/directory with the dryrun’s media volume. - A
magento/directory with the codebase, includingapp/code,app/etc/env.php,composer.json,composer.lock. - A short
README.mdwith the rehydration command (docker compose up -dplus the post-run import instructions).
- Extract the .tar.gz.
docker compose up -d.- Import the database with
docker compose exec mysql mysql -uroot < db.sql.gz. - Hit
http://localhost(or whatever port the compose file exposes) in your browser.
What is in a Warden package
The Warden package is the same payload restructured for Warden’s directory conventions. Warden is a popular Magento local-development tool that wraps Docker with a Traefik reverse proxy, automatic SSL, and Magento-friendly defaults. Engineers who already use Warden prefer this bundle because it Just Works with their existing local setup. To rehydrate locally:- Extract the .tar.gz into the Warden projects directory.
warden env up.- Database import follows Warden’s standard
warden db importcommand.
Where Docker packages come from
Packages are produced by two pathways:- Automatic. Some agency tenancies have DryRunPro configured to auto-produce a Docker snapshot at the end of every successful dryrun build. Check Settings with your tenancy admin if you do not see entries here.
- On-demand. From the Staging Detail page of any active dryrun, click the Generate Docker Snapshot or Generate Warden Package button in the action strip. The package appears here within a few minutes.
- You delete the parent dryrun (the table row disappears).
- You delete the parent project (every package for that project’s dryruns is purged).
Why a separate Warden flavour exists
Magento engineers tend to fall into two camps for local development. One camp uses raw Docker Compose (or Lando, or DDEV). The other uses Warden. The two have incompatible directory conventions and reverse-proxy setups, and converting between them is fiddly. DryRunPro produces both flavours so engineers in either camp candocker compose up (or warden env up) without manual conversion. The underlying database, media, and codebase are identical in both packages; only the packaging format differs.
Audit and retention
Every Download click is logged with the user, timestamp, and Staging ID for audit. The audit log entry survives the package’s deletion. Packages are retained as long as the parent dryrun is in the tenancy storage layer. Once the parent dryrun is deleted (or the parent project is deleted via Delete Project), packages are purged on the next storage reclamation pass (within 24 hours). If you need a package preserved beyond the parent’s lifetime, download it before tearing the parent down.When you would use this tab
- Hand-off to Adobe support. When raising a ticket with Adobe Commerce support, you need to send them a reproducible bundle. The Docker snapshot is exactly that.
- Onboarding a new engineer. New hires can
docker compose upthe snapshot locally without provisioning their own dryrun. - Offline debugging. When the dryrun is too slow or when you need Xdebug step-through, pull the package locally and debug there.
- Disaster-recovery rehearsal. A snapshot is a frozen image. Some teams use it to rehearse a worst-case scenario (the cloud dryrun is gone, can we still bring up Magento?).
- Interview / training material. A sanitised snapshot is a great way to give a candidate or trainee a real Magento environment to work against.
Cross-links
- Dryrun Environments, the source of every staging package.
- Staging Detail, where Generate Docker Snapshot and Generate Warden Package live.
- Project Overview, the per-project Staging Packages tab that lists packages for one project.
- Roles, which roles can download a package.
- Delete Project, what happens to packages when the parent project is deleted.
Frequently asked questions
Why is the create / edit / delete UI on this page gone? Legacy. In earlier DryRunPro versions you could upload arbitrary Docker images here. That CRUD has been retired because it created a divergence between what the dryrun was running and what was downloadable. Today the rule is: dryrun produces package, package is downloadable, package is deleted with parent. No manual CRUD. Are secrets included in the Docker snapshot? No. The.env file is sanitised before packaging. Secrets such as Adobe API tokens, payment-gateway keys, and the Adobe Cloud SSH key are replaced with placeholder strings. You will need to re-supply them after rehydration. This is intentional, so a snapshot can be safely shared with a non-tenancy engineer for debugging.
Why is my Updated timestamp older than I expect?
The Updated column reflects the last time the package was produced, not the last time the dryrun changed. If you ran a dryrun build a week ago, then re-synced data into it yesterday, the package still says a week ago. Click Generate Docker Snapshot on the dryrun’s Staging Detail page to refresh.
How big is a typical Docker snapshot?
For a mid-size enterprise Adobe Commerce Cloud project, expect 5 to 20 GB. The bulk is the database export plus the media volume. Smaller dryruns (sandbox / developer ones) can fit under 1 GB.
Can I re-upload a Docker snapshot to spin up a new dryrun?
No. The snapshot is for laptop-side use. To spin up a cloud dryrun, use Create Staging Environment on the Dryrun Environments tab, which clones from Adobe Cloud directly.
My Download link returns 404.
The package has been purged because the parent dryrun (or the parent project) was deleted. There is no way to restore. Open a ticket if this is unexpected and the audit log will show who triggered the delete.
Does downloading consume any tenancy quota?
No. Downloads are free. The storage cost is borne by the tenancy as long as the package exists; downloads do not multiply that cost.
Can I script downloads via API?
Yes. The Download link is a signed URL and the equivalent endpoint is exposed via the DryRunPro API. Cross-link the API documentation in the developer section once it ships.