π³ php-nvm is a generic, lightweight Docker image for PHP applications that includes NVM, allowing dynamic management of multiple Node.js versions at runtime.
- β PHP 8.x support (8.0β8.4)
- β Pre-installed NVM for managing multiple Node.js versions
- β Ideal for modern full-stack PHP projects that require Node.js tooling (e.g. Webpack, Vite, etc.)
- β CI-friendly: small, clean, and consistently versioned
- β
Useful system tools:
git
,rsync
,openssh-client
,make
,curl
, etc. - β All images share the same consistent build logic
Tag | PHP Version | Included Tools |
---|---|---|
8.0 | 8.0 | β PHP, Composer, NVM, Node.js via NVM |
8.1 | 8.1 | β PHP, Composer, NVM, Node.js via NVM |
8.2 | 8.2 | β PHP, Composer, NVM, Node.js via NVM |
8.3 | 8.3 | β PHP, Composer, NVM, Node.js via NVM |
8.4 | 8.4 | β PHP, Composer, NVM, Node.js via NVM |
iοΈ The exact Node.js version is not preinstalled β use
nvm install
as needed in your Dockerfile or entrypoint script.
FROM ocreaper/php-nvm:8.3 # Install Node.js 18 using NVM RUN source ~/.nvm/nvm.sh && \ nvm install 18 && \ nvm use 18 && \ node -v && npm -v # Set up your app COPY . /app WORKDIR /app RUN composer install
docker run -it --rm ocreaper/php-nvm:8.3 bash
Any contributions are welcomed!
Use Conventional Commits with a required scope:
- β feat(8.4): add PHP 8.4 support
- β fix(8.3): correct NVM installation path
GitHub Actions will:
- β Enforce PR title formatting
- β Ensure the Docker image builds successfully
See CONTRIBUTING.md for full contribution guidelines.