Welcome to PHP5.6BuildTools container.
This image updated version from PHPEssentials.
Main purpuse of this container is to provide easy to use PHP CLI and other essential tools for debuging and testing your PHP applications.
- Centos 7
- PHP 5.6.* (ondrej's repos)
- Composer
- Pear
- PHPUnit v5.6
- PHP Copy/Paste Detector - phpcpd v2.0
- PHP Dead Code Detector - phpdcd v1
- Measuring the size and analyzing the structure of a PHP project - phploc v3
- PHP software metrics - pdepend v2.2
- PHP Code sniffer- phpcs v3.0
- PHP Mess Detector - phpmd v2.4
- Behaviour driven development for PHP - behat v3.2
docker pull denisristic/php5.6buildtools
Container is give you PHP's interactive mode by default:
docker run --rm -i -t denisristic/php5.6buildtools
Docker's run command reference manual
docker run --rm -i -t denisristic/php5.6buildtools php -m
docker run --rm -i -t denisristic/php5.6buildtools php -i
Run PHP's internal server (a totally useless example)
docker run --publish 80:80 --rm -t -i denisristic/php5.6buildtools \
php -S 0.0.0.0:80
docker run --rm -i -t denisristic/php5.6buildtools composer
docker run --rm -i -t denisristic/php5.6buildtools pear
docker run --rm -i -t denisristic/php5.6buildtools phpunit
docker run --rm -i -t denisristic/php5.6buildtools phpcpd
docker run --rm -i -t denisristic/php5.6buildtools phpdcd
docker run --rm -i -t denisristic/php5.6buildtools phploc
docker run --rm -i -t denisristic/php5.6buildtools pdepend
docker run --rm -i -t denisristic/php5.6buildtools phpcs
docker run --rm -i -t denisristic/php5.6buildtools phpmd
docker run --rm -i -t denisristic/php5.6buildtools behat
Please note, that running things like composer autoupdate
is futile as
container & it's content will be removed when command finishes.
If there's a newer version add an issue on Github or rebuild the
php-essentials image yourself.
All above example are useless as presented as the code runs in the container and none of the examples actualy maps local files to the container:
A bit more usefull example -- adding volume param that maps the current folder and hinting PHP server where it's document root is
docker run --volume `pwd`:/opt/web/page:r --publish 80:80 --rm -t -i denisristic/php5.6buildtools \
php -S 0.0.0.0:80 -t /opt/web/page
Do you want to run this long chain every time?
Include essentials.sh file (or it's contents) to bashrc or similar file. This will enable you to run all these commands as if they were installed on your local machine
In case you want to build it yourself
docker build --rm -t denisristic/php5.6buildtools .
docker run --rm -i -t denisristic/php5.6buildtools bash