Sign inSign up

snail007/php-cli

By snail007

•Updated over 5 years ago

run php server with full extensions and xdebug support for development and debug easily.

Image
0

108

snail007/php-cli repository overview

⁠Expample

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

⁠use it as command

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

⁠phpstrom xdebug configuration base on example

⁠servers

host: 0.0.0.0
port: 80
path mapping: /home/www map to /www

⁠xdebug

port: 9300

⁠php

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#

⁠php config

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

Tag summary

Content type

Image

Digest

Size

485.2 MB

Last updated

over 5 years ago

docker pull snail007/php-cli:7.2