Docker image tailored to run PHP application
10K+
Docker image tailored to run PHP application. Check https://hub.docker.com/r/touch4it/docker-php7
PHP 8
You can you this docker-compose.yml file to develop:
www:
image: touch4it/php8:php8.2-fpm-nginx
volumes:
- "app:/var/www/html/web"
ports:
- "80"
Of course, you are free to add linked containers like database, caching etc.
Use docker-compose up command to start your development environment.
www:
image: touch4it/php8:php8.2-fpm-nginx
volumes:
- "app:/var/www/html/web"
- "php.ini:/usr/local/etc/php/conf.d/docker-vars.ini"
- "www.conf:/usr/local/etc/php-fpm.d/www.conf"
- "nginx.conf:/etc/nginx/nginx.conf"
- "nginx.vh.default.conf:/etc/nginx/conf.d/default.conf"
- "nginx.custom.conf:/etc/nginx/conf.d/custom.conf"
- "nginx.other-custom.conf:/etc/nginx/conf.d/other-custom.conf"
ports:
- "80"
You can build production ready image with Dockerfile like this:
FROM touch4it/docker-php7:latest
ADD . /var/www/html
This image uses several environment variables which are easy to miss. While none of the variables are required, they may significantly aid you in using the image.
ADMIN_EMAILThe ServerAdmin sets the contact address that the server includes in any error messages it returns to the client.
If the httpd doesn't recognize the supplied argument as an URL, it assumes, that it's an email-address and prepends it with mailto: in hyperlink targets.
However, it's recommended to actually use an email address, since there are a lot of CGI scripts that make that assumption.
If you want to use an URL, it should point to another server under your control. Otherwise users may not be able to contact you in case of errors.
Default value: webmaster@localhost
For Apache-based images
PHP_TIME_ZONEDefines the default timezone used by the date functions
Default value: Europe/London
PHP_MEMORY_LIMITMaximum amount of memory a script may consume
Default value: 256M
PHP_UPLOAD_MAX_FILESIZEMaximum allowed size for uploaded files.
http://php.net/upload-max-filesize
Default value: 32M
PHP_POST_MAX_SIZEMaximum size of POST data that PHP will accept. Its value may be 0 to disable the limit. It is ignored if POST data reading is disabled through enable_post_data_reading.
Default value: 32M
For Apache-based images
for Apache 2.4.26+ based images
This work is based on official Docker Hub php images. You can use docker-php-ext-install to add new extensions. More information can be found https://hub.docker.com/_/php/
You can add an ini file into $PHP_INI_DIR/conf.d directory
Check if you have not selected Nginx-based image
Same as in similar official PHP image on Docker Hub
1.27.5
Content type
Image
Digest
sha256:03cc72a47…
Size
326 MB
Last updated
20 days ago
docker pull touch4it/php8:php8.3-fpm-nginx-dev