# garylab/dnmp

Docker LNMP (Nginx, PHP7/PHP5, MySQL, Redis)

Repository: https://github.com/garylab/dnmp
Canonical: https://ross.abutalabs.com/products/dnmp
Homepage: https://garymeng.com/cn/2120.html
Language: Shell
License: MIT
License Family: permissive
Topics: docker, lnmp, lnmp-dockerfile, mysql, nginx, php, redis
Last push: 2026-08-12T06:36:39+00:00

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 97, release rhythm 8, longevity 100
- inputs: {"age_days": 3420, "days_push": 21, "days_rel": 463, "gap_med": 237, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4087, forks 1413 (observed 2026-08-28T04:08:34.512175+00:00)

## What it is
DNMP is a Docker Compose-based one-click LNMP stack bundling Nginx/Openresty, multiple PHP versions (5.4-8.0), MySQL 5/8, Redis, and optional services like Elasticsearch, MongoDB, and RabbitMQ. It provides prebuilt Dockerfiles, host-mounted source code, data, configs, and logs, and works across Windows, Linux, and macOS including ARM CPUs.

## Use cases
- set up a local PHP development environment with docker
- run multiple PHP versions side by side and switch between them
- spin up nginx mysql redis with docker-compose
- develop PHP sites with HTTPS and multiple domains locally
- install PHP extensions like gd or redis in a container
- self-host a full LNMP stack on an ARM machine

## When to choose
- you want a ready-made, battle-tested PHP dev stack with minimal setup
- you need to test code against several PHP versions
- you want configs, logs, source, and database data on the host filesystem
- you want optional add-ons like Elasticsearch, MongoDB, or RabbitMQ with one toggle

## When to avoid
- you deploy PHP via Kubernetes or a PaaS rather than docker-compose
- your stack is not PHP-based
- you need a hardened, minimal production image pipeline rather than a dev-oriented bundle

## Facets
- artifact type: infra-config
- maturity: active
- function: deployment, container-orchestration, http-server, database, caching, configuration-management
- domain: web-development, self-hosted, backend
- platform: windows, cross-platform
- tags: lnmp, docker-compose, php, nginx, mysql, redis, local-development-environment, php-extensions, elasticsearch, mongodb, rabbitmq, devops, containers, docker, linux, macos

## Member repositories
- garylab/dnmp (main) score 66

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:34.512175+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:23:23.044521+00:00, confidence not recorded.
  - readme: https://github.com/garylab/dnmp (fetched 2026-08-28T04:08:34.512175+00:00, sha f12abd252207)
  - homepage: https://garymeng.com/cn/2120.html (fetched 2026-08-29T09:15:13.385744+00:00, sha 9473f1ba14fc)
  - site_page: https://garymeng.com/cn/about (fetched 2026-08-29T09:15:13.390768+00:00, sha b48122bedc2d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
