run php server with full extensions and xdebug support for development and debug easily.
108
docker run -it --name phptest -w /www -v /home/www:/www -p 9080:80 snail007/php-cli:7.2 php -S 0.0.0.0:80
save the shell script contens to your /usr/bin/phpdebug , then chmod +x /usr/bin/phpdebug
#!/bin/bash
port="9080"
if [ ! -z "$1" ];then
port="$1"
fi
docker run -it --rm -w /www -v $PWD:/www -p $port:80 snail007/php-cli:7.2 php -S 0.0.0.0:80 $2
host: 0.0.0.0
port: 80
path mapping: /home/www map to /www
port: 9300
root@2a92312db122:/www# php -v
PHP 7.2.34 (cli) (built: Dec 11 2020 10:44:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with the ionCube PHP Loader + ionCube24 v10.4.5, Copyright (c) 2002-2020, by ionCube Ltd.
with Zend OPcache v7.2.34, Copyright (c) 1999-2018, by Zend Technologies
with Xdebug v3.0.3, Copyright (c) 2002-2021, by Derick Rethans
root@2a92312db122:/www#
path: /usr/local/etc/php
root@2a92312db122:/www# tree /usr/local/etc/php
/usr/local/etc/php
|-- conf.d
| |-- apt.gpg
| |-- docker-php-ext-amqp.ini
| |-- docker-php-ext-apcu.ini
| |-- docker-php-ext-bcmath.ini
| |-- docker-php-ext-bz2.ini
| |-- docker-php-ext-calendar.ini
| |-- docker-php-ext-cmark.ini
| |-- docker-php-ext-dba.ini
| |-- docker-php-ext-decimal.ini
| |-- docker-php-ext-ds.ini
| |-- docker-php-ext-enchant.ini
| |-- docker-php-ext-ev.ini
| |-- docker-php-ext-excimer.ini
| |-- docker-php-ext-exif.ini
| |-- docker-php-ext-gd.ini
| |-- docker-php-ext-gearman.ini
| |-- docker-php-ext-geoip.ini
| |-- docker-php-ext-geospatial.ini
| |-- docker-php-ext-gettext.ini
| |-- docker-php-ext-gmp.ini
| |-- docker-php-ext-gnupg.ini
| |-- docker-php-ext-grpc.ini
| |-- docker-php-ext-igbinary.ini
| |-- docker-php-ext-imagick.ini
| |-- docker-php-ext-imap.ini
| |-- docker-php-ext-interbase.ini
| |-- docker-php-ext-intl.ini
| |-- docker-php-ext-ioncube_loader.ini
| |-- docker-php-ext-json_post.ini
| |-- docker-php-ext-ldap.ini
| |-- docker-php-ext-mailparse.ini
| |-- docker-php-ext-maxminddb.ini
| |-- docker-php-ext-mcrypt.ini
| |-- docker-php-ext-memcache.ini
| |-- docker-php-ext-mongodb.ini
| |-- docker-php-ext-mosquitto.ini
| |-- docker-php-ext-msgpack.ini
| |-- docker-php-ext-mysqli.ini
| |-- docker-php-ext-oauth.ini
| |-- docker-php-ext-oci8.ini
| |-- docker-php-ext-odbc.ini
| |-- docker-php-ext-opcache.ini
| |-- docker-php-ext-opencensus.ini
| |-- docker-php-ext-pcntl.ini
| |-- docker-php-ext-pcov.ini
| |-- docker-php-ext-pdo_dblib.ini
| |-- docker-php-ext-pdo_firebird.ini
| |-- docker-php-ext-pdo_mysql.ini
| |-- docker-php-ext-pdo_oci.ini
| |-- docker-php-ext-pdo_odbc.ini
| |-- docker-php-ext-pdo_pgsql.ini
| |-- docker-php-ext-pdo_sqlsrv.ini
| |-- docker-php-ext-pgsql.ini
| |-- docker-php-ext-propro.ini
| |-- docker-php-ext-protobuf.ini.disabled
| |-- docker-php-ext-pspell.ini
| |-- docker-php-ext-raphf.ini.disabled
| |-- docker-php-ext-rdkafka.ini
| |-- docker-php-ext-recode.ini
| |-- docker-php-ext-redis.ini
| |-- docker-php-ext-seaslog.ini
| |-- docker-php-ext-shmop.ini
| |-- docker-php-ext-smbclient.ini
| |-- docker-php-ext-snmp.ini
| |-- docker-php-ext-snuffleupagus.ini.disabled
| |-- docker-php-ext-soap.ini
| |-- docker-php-ext-sockets.ini
| |-- docker-php-ext-sodium.ini
| |-- docker-php-ext-solr.ini
| |-- docker-php-ext-sqlsrv.ini
| |-- docker-php-ext-ssh2.ini
| |-- docker-php-ext-swoole.ini.disabled
| |-- docker-php-ext-sysvmsg.ini
| |-- docker-php-ext-sysvsem.ini
| |-- docker-php-ext-sysvshm.ini
| |-- docker-php-ext-tensor.ini
| |-- docker-php-ext-tidy.ini
| |-- docker-php-ext-timezonedb.ini
| |-- docker-php-ext-uopz.ini
| |-- docker-php-ext-uuid.ini
| |-- docker-php-ext-wddx.ini
| |-- docker-php-ext-xdebug.ini
| |-- docker-php-ext-xhprof.ini
| |-- docker-php-ext-xlswriter.ini
| |-- docker-php-ext-xmlrpc.ini
| |-- docker-php-ext-xsl.ini
| |-- docker-php-ext-yaml.ini
| |-- docker-php-ext-yar.ini
| |-- docker-php-ext-zip.ini
| |-- docker-php-ext-zookeeper.ini
| |-- docker-php-ext-zstd.ini
| |-- snuffleupagus.rules
| |-- xx-php-ext-apcu_bc.ini
| |-- xx-php-ext-http.ini.disabled
| `-- xx-php-ext-memcached.ini
|-- php.ini
`-- php.ini-production
xdebug
root@2a92312db122:/www# cat /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
[xdebug]
zend_extension=xdebug
xdebug.mode = debug
xdebug.client_host = host.docker.internal
xdebug.client_port = 9300
xdebug.start_with_request=yes
xdebug.idekey = PHPSTORM
xdebug.discover_client_host=false
Content type
Image
Digest
Size
485.2 MB
Last updated
over 5 years ago
docker pull snail007/php-cli:7.2