Repository: phpearth/docker-php Branch: master Commit: cd18a6846df4 Files: 141 Total size: 117.2 KB Directory structure: gitextract_z_dotten/ ├── .editorconfig ├── .github/ │ ├── CODE_OF_CONDUCT.md │ └── CONTRIBUTING.md ├── .travis.yml ├── CHANGELOG.md ├── LICENSE ├── Makefile ├── README.md ├── docker/ │ ├── 7.0-apache.Dockerfile │ ├── 7.0-cgi.Dockerfile │ ├── 7.0-cli.Dockerfile │ ├── 7.0-lighttpd.Dockerfile │ ├── 7.0-litespeed.Dockerfile │ ├── 7.0-nginx.Dockerfile │ ├── 7.0.Dockerfile │ ├── 7.1-apache.Dockerfile │ ├── 7.1-cgi.Dockerfile │ ├── 7.1-cli.Dockerfile │ ├── 7.1-lighttpd.Dockerfile │ ├── 7.1-litespeed.Dockerfile │ ├── 7.1-nginx.Dockerfile │ ├── 7.1.Dockerfile │ ├── 7.2-apache.Dockerfile │ ├── 7.2-cgi.Dockerfile │ ├── 7.2-cli.Dockerfile │ ├── 7.2-lighttpd.Dockerfile │ ├── 7.2-litespeed.Dockerfile │ ├── 7.2-nginx.Dockerfile │ ├── 7.2.Dockerfile │ ├── 7.3-apache.Dockerfile │ ├── 7.3-cgi.Dockerfile │ ├── 7.3-cli.Dockerfile │ ├── 7.3-lighttpd.Dockerfile │ ├── 7.3-litespeed.Dockerfile │ ├── 7.3-nginx.Dockerfile │ ├── 7.3.Dockerfile │ ├── 7.4-apache.Dockerfile │ ├── 7.4-cgi.Dockerfile │ ├── 7.4-cli.Dockerfile │ ├── 7.4-lighttpd.Dockerfile │ ├── 7.4-litespeed.Dockerfile │ ├── 7.4-nginx.Dockerfile │ ├── 7.4.Dockerfile │ ├── hooks/ │ │ ├── build │ │ └── post_push │ └── tags/ │ ├── apache/ │ │ ├── etc/ │ │ │ └── service/ │ │ │ └── apache/ │ │ │ └── run │ │ └── sbin/ │ │ ├── runit-wrapper │ │ └── runsvdir-start │ ├── lighttpd/ │ │ ├── etc/ │ │ │ ├── lighttpd/ │ │ │ │ └── example.conf │ │ │ └── service/ │ │ │ ├── lighttpd/ │ │ │ │ └── run │ │ │ └── php-fpm/ │ │ │ └── run │ │ ├── sbin/ │ │ │ ├── runit-wrapper │ │ │ └── runsvdir-start │ │ └── var/ │ │ └── www/ │ │ └── localhost/ │ │ └── htdocs/ │ │ └── index.php │ ├── litespeed/ │ │ ├── etc/ │ │ │ └── service/ │ │ │ └── lsws/ │ │ │ └── run │ │ └── sbin/ │ │ ├── runit-wrapper │ │ └── runsvdir-start │ └── nginx/ │ ├── etc/ │ │ ├── nginx/ │ │ │ └── conf.d/ │ │ │ └── default.conf │ │ └── service/ │ │ ├── nginx/ │ │ │ └── run │ │ └── php-fpm/ │ │ └── run │ ├── sbin/ │ │ ├── runit-wrapper │ │ └── runsvdir-start │ └── var/ │ └── www/ │ └── html/ │ └── index.php └── tests/ ├── 7.0-apache/ │ ├── goss.yaml │ └── test ├── 7.0-cgi/ │ ├── goss.yaml │ └── test ├── 7.0-composer/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.0-extensions/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.0-litespeed/ │ ├── goss.yaml │ └── test ├── 7.0-nginx/ │ ├── goss.yaml │ └── test ├── 7.1-apache/ │ ├── goss.yaml │ └── test ├── 7.1-cgi/ │ ├── goss.yaml │ └── test ├── 7.1-composer/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.1-extensions/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.1-iconv/ │ ├── Dockerfile │ ├── goss.yaml │ ├── iconv.php │ └── test ├── 7.1-litespeed/ │ ├── goss.yaml │ └── test ├── 7.1-nginx/ │ ├── goss.yaml │ └── test ├── 7.1-phpunit/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.2-apache/ │ ├── goss.yaml │ └── test ├── 7.2-argon/ │ ├── Dockerfile │ ├── argon.php │ ├── goss.yaml │ └── test ├── 7.2-cgi/ │ ├── goss.yaml │ └── test ├── 7.2-composer/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.2-extensions/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.2-litespeed/ │ ├── goss.yaml │ └── test ├── 7.2-nginx/ │ ├── goss.yaml │ └── test ├── 7.2-phpunit/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.3-apache/ │ ├── goss.yaml │ └── test ├── 7.3-argon/ │ ├── Dockerfile │ ├── argon.php │ ├── goss.yaml │ └── test ├── 7.3-cgi/ │ ├── goss.yaml │ └── test ├── 7.3-composer/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.3-extensions/ │ ├── Dockerfile │ ├── goss.yaml │ └── test ├── 7.3-litespeed/ │ ├── goss.yaml │ └── test ├── 7.3-nginx/ │ ├── goss.yaml │ └── test ├── 7.3-phpunit/ │ ├── Dockerfile │ ├── goss.yaml │ └── test └── test ================================================ FILE CONTENTS ================================================ ================================================ FILE: .editorconfig ================================================ # http://editorconfig.org root = true [*] end_of_line = lf charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true [*.md] trim_trailing_whitespace = false [{docker/hooks/build,docker/hooks/post_push}] indent_style = space indent_size = 4 [docker/*.Dockerfile] indent_style = space indent_size = 4 [*.yml] indent_style = space indent_size = 2 [Makefile] indent_style = space indent_size = 2 trim_trailing_whitespace = false [APKBUILD] indent_style = space indent_size = 2 [*.patch] trim_trailing_whitespace = unset end_of_line = unset insert_final_newline = unset ================================================ FILE: .github/CODE_OF_CONDUCT.md ================================================ # Code of conduct This project is part of the [PHP.earth](https://php.earth) group which follows a [code of conduct](https://conduct.php.earth) to guarantee a welcoming, safe, inclusive, and harassment-free environment for anyone. ================================================ FILE: .github/CONTRIBUTING.md ================================================ # Contributing guide Contributions are most welcome. Below is described procedure for contributing to this repository. * Fork this repository over GitHub * Create a separate branch, for instance `patch-1` so you will not need to rebase your fork if your master branch is merged ```bash git clone git@github.com:your_username/docker-php cd docker-php git checkout -b patch-1 ``` * Make changes, commit them and push to your fork ```bash git add . git commit -m "Fix bug" git push origin patch-1 ``` * Open a pull request ## Style guide * This repository uses [Markdown](https://daringfireball.net/projects/markdown/) syntax and follows [cirosantilli/markdown-style-guide](http://www.cirosantilli.com/markdown-style-guide/) style guide. ## GitHub issues labels Labels are used to organize issues and pull requests into manageable categories. The following labels are used: * **bug** - Attached when bug is reported. * **duplicate** - Attached when the same issue or pull request already exists. * **enhancement** - Attached when creating a new feature. * **invalid** - Attached when the issue or pull request does not correspond with scope of the repository or because of some inconsistency. * **question** - Attached for questions or discussions. * **wontfix** - Attached when decided that issue will not be fixed. ## Release process *(For repository maintainers)* This repository follows [semantic versioning](http://semver.org/). When source code changes, new features are implemented, or PHP version gets upgraded, a new version (e.g. 1.x.y) is released by the following release process: * **1. Tests** Tests are run with [Goss](https://github.com/aelsabbahy/goss): ```bash make test [t=" ..."] ``` * **2. Update changelog** Create an entry in [CHANGELOG.md](/CHANGELOG.md) describing all the changes from previous release. * **3. Docker images** Build and push Docker images to [Docker Hub](https://hub.docker.com/r/phpearth/php/). ```bash make build-and-push ``` ================================================ FILE: .travis.yml ================================================ sudo: required services: - docker before_install: # install goss - curl -L https://goss.rocks/install | sudo sh script: - cd tests && ./test ================================================ FILE: CHANGELOG.md ================================================ # Changelog All notable changes to this project will be documented in this file. This project [keeps a CHANGELOG](http://keepachangelog.com/) based on the time changes. ## 2019-05-10 * PHP 7.4.0-dev ## 2018-12-06 * PHP 7.3.0 ## 2018-10-24 * PHP 7.3.0RC4 * PHP 7.2.11 * PHP 7.1.23 ## 2018-09-25 * Alpine 3.8.1 base image update ## 2018-09-13 * PHP 7.3.0RC1 * PHP 7.2.10 * PHP 7.1.22 * PHP 7.0.32 ## 2018-09-06 * PHP 7.3.0beta3 * PHP 7.2.9 * PHP 7.1.21 ## 2018-07-21 * Alpine 3.8 * PHP 7.0.31 * PHP 7.1.19 * PHP 7.2.8 * PHP 7.3.0 alpha 4 ## 2018-06-22 * PHP 7.3 images * PHP 7.2.7 ## 2018-06-21 * Repository moved to github.com/phpearth * PHP 7.2.4 * PHP 7.1.16 * PHP 7.0.29 * OpenLiteSpeed 1.5.0 RC 2 r101 * PHP 7.2.3 r101 * PHP 7.2.3 * PHP 7.0.28 * PHP 7.1.15 * OpenLiteSpeed 1.5.0 RC2 * OpenLiteSpeed 1.4.29 * PHP 7.1.14 * PHP 7.2.2 ## 2018-02-01 * PHP 7.0.27 * PHP 7.1.13 * PHP 7.2.1 ## 2018-01-03 * Alpine 3.7 * PHP 7.2.0 stable * Fix OpenLiteSpeed images to run the server properly * Expose important web server ports in Docker images * New Lighttpd web server images ## 2017-11-22 * PHP 7.2.0RC6 * PHP 7.1.12 * PHP 7.0.26 * OpenLiteSpeed 1.4.28 ## 2017-10-29 * Add phar extension to all Docker images except minimal ones. * Use PHP.earth Alpine packages with custom compiler optimization flags. ## 2017-10-25 * PHP 7.2.0RC5 * PHP 7.1.11 * PHP 7.0.25 * New images with only PHP CLI from PHP.earth Alpine repos * Alpine repository moved to its own [location](https://github.com/php-earth/alpine) and repository folder structure refactored ## 2017-10-01 * Refactored PHP APKBUILD files * PHPUnit 6.3.1 * Fixed bug with PHP bundled libgd not working with provided GNU libiconv package: ``` PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/7.1/modules/gd.so' - Error relocating /usr/lib/php/7.1/modules/gd.so: libiconv: symbol not found in Unknown on line ) ``` * PHP 7.0.24 * PHP 7.1.10 * PHP 7.2.0RC3 * Swoole 1.9.21 * PECL Libsodium 2.0.8 * PECL Redis 3.1.4 * [Apache bug fixed](https://github.com/php-earth/docker-php/issues/4) ## 2017-09-20 * Swoole 1.9.20 * OpenLiteSpeed 1.4.27 * PHP 7.2.0 RC2 * PHP 7.1.9 * PHP 7.0.23 * MongoDB 1.3.0 * Composer 1.5.2 * [iconv bug fix](https://github.com/php-earth/docker-php/issues/3) ## 2017-08-14 * Refactor and fix multiple issues with Alpine repository packages * Swoole 1.9.18 * PHPUnit 6.3.0 * Composer 1.5.1 * PHP 7.2.0 beta 2 * PHP 7.1.8 * PHP 7.0.22 * New tests ## 2017-07-06 * Debian based images removed in favor of Alpine for smallest possible sizes * Introducing PHP.earth Alpine repository ## 2017-06-20 * Apache HTTP Server * PHP CGI * Refactored and stabilized Docker tags * Improved documentation * Tests ## 2017-06-12 * Repository location refactored * PEAR removed * PHP 7.2.0alpha1 * Composer installation script with optional prestissimo plugin ## 2017-06-03 * OpenLiteSpeed 1.4.26 * New tag added for OpenLiteSpeed on Alpine * Use `-O3` optimization level for GCC when compiling PHP * Move intl, xsl and gettext PHP extensions to installation script * Optimize Debian images size ## 2017-05-29 * Improved script for downloading PHP extensions * Fixed minor bug in script for downloading Composer * Removed bash from Alpine Docker images * Refactor Dockerfiles * PHP GD extension moved to installation script ## 2017-05-27 * Refactored Docker tags * Upgraded to Alpine 3.6 base images * Installation script for Composer and Prestissimo plugin for parallel downloading of PHP packages ## 2017-05-13 * Repository refactored * PHP 7.1.5 ## 2017-04-13 * PHP 7.1.4 ## 2017-04-01 * Xdebug extension ## 2017-04-01 * Fixed OpenLiteSpeed installation dependencies ## 2017-04-01 * Added support for multiple PHP extensions * Documentation improvements * Composer removed from base images ## 2017-03-31 * xmlrpc support * postgresql and pdo_pgsql support * gmp support * recode support ## 2017-03-28 * The imagick PECL extension support ## 2017-03-27 * The memcached extension support ## 2017-03-21 * Tidy extension support * WDDX extension support ## 2017-03-20 * Initial release with PHP 7.1.3 ================================================ FILE: LICENSE ================================================ Copyright (c) 2016-present PHP.earth Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: Makefile ================================================ .RECIPEPREFIX := $(.RECIPEPREFIX) .DEFAULT_GOAL := help .PHONY: * help: @echo "\033[33mUsage:\033[0m\n make [target] [arg=\"val\"...]\n\n\033[33mTargets:\033[0m" @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[32m%-15s\033[0m %s\n", $$1, $$2}' test: ## Run all tests; Usage: make test [t=" ..."] @cd tests; \ ./test "$(t)" build: ## Build image. Usage: make build TAG="7.0-cli" @docker build --no-cache --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` --build-arg VCS_REF=`git rev-parse --short HEAD` -t phpearth/php:$(TAG) -f docker/$(TAG).Dockerfile docker build-70: ## Build PHP 7.0 images make build TAG="7.0" make build TAG="7.0-apache" make build TAG="7.0-cgi" make build TAG="7.0-cli" make build TAG="7.0-lighttpd" make build TAG="7.0-litespeed" make build TAG="7.0-nginx" build-71: ## Build PHP 7.1 images make build TAG="7.1" make build TAG="7.1-apache" make build TAG="7.1-cgi" make build TAG="7.1-cli" make build TAG="7.1-lighttpd" make build TAG="7.1-litespeed" make build TAG="7.1-nginx" build-72: ## Build PHP 7.2 images make build TAG="7.2" make build TAG="7.2-apache" make build TAG="7.2-cgi" make build TAG="7.2-cli" make build TAG="7.2-lighttpd" make build TAG="7.2-litespeed" make build TAG="7.2-nginx" build-73: ## Build PHP 7.3 images make build TAG="7.3" make build TAG="7.3-apache" make build TAG="7.3-cgi" make build TAG="7.3-cli" make build TAG="7.3-lighttpd" make build TAG="7.3-litespeed" make build TAG="7.3-nginx" build-all: ## Build all images make build-70 make build-71 make build-72 make build-73 push-70: ## Push built PHP 7.0 images to Docker Hub @docker push phpearth/php:7.0 @docker push phpearth/php:7.0-apache @docker push phpearth/php:7.0-cgi @docker push phpearth/php:7.0-cli @docker push phpearth/php:7.0-lighttpd @docker push phpearth/php:7.0-litespeed @docker push phpearth/php:7.0-nginx push-71: ## Push built PHP 7.1 images to Docker Hub @docker push phpearth/php:7.1 @docker push phpearth/php:7.1-apache @docker push phpearth/php:7.1-cgi @docker push phpearth/php:7.1-cli @docker push phpearth/php:7.1-lighttpd @docker push phpearth/php:7.1-litespeed @docker push phpearth/php:7.1-nginx push-72: ## Push built PHP 7.2 images to Docker Hub @docker push phpearth/php:7.2 @docker push phpearth/php:7.2-apache @docker push phpearth/php:7.2-cgi @docker push phpearth/php:7.2-cli @docker push phpearth/php:7.2-lighttpd @docker push phpearth/php:7.2-litespeed @docker push phpearth/php:7.2-nginx push-73: ## Push built PHP 7.3 images to Docker Hub @docker push phpearth/php:7.3 @docker push phpearth/php:7.3-apache @docker push phpearth/php:7.3-cgi @docker push phpearth/php:7.3-cli @docker push phpearth/php:7.3-lighttpd @docker push phpearth/php:7.3-litespeed @docker push phpearth/php:7.3-nginx @docker tag phpearth/php:7.3 phpearth/php:latest @docker push phpearth/php:latest push-all: ## Push all built images to Docker Hub make push-70 make push-71 make push-72 make push-73 build-and-push-70: ## Build and push PHP 7.0 images to Docker Hub make build-70 make push-70 build-and-push-71: ## Build and push PHP 7.1 images to Docker Hub make build-71 make push-71 build-and-push-72: ## Build and push PHP 7.2 images to Docker Hub make build-72 make push-72 build-and-push-73: ## Build and push PHP 7.3 images to Docker Hub make build-73 make push-73 build-and-push: ## Build all images and push them to Docker Hub make build-all make push-all clean: ## Clean all containers and images on the system -@docker ps -a -q | xargs docker rm -f -@docker images -q | xargs docker rmi -f ================================================ FILE: README.md ================================================ # Docker for PHP developers [![Build Status](https://img.shields.io/travis/phpearth/docker-php/master.svg?style=plastic)](https://travis-ci.org/phpearth/docker-php) [![Docker Automated build](https://img.shields.io/docker/automated/phpearth/php.svg?style=plastic)](https://hub.docker.com/r/phpearth/php/) [![MIT License](https://img.shields.io/github/license/phpearth/docker-php.svg?style=plastic "MIT License")](https://github.com/phpearth/docker-php/blob/master/LICENSE) Carefully crafted Docker images for PHP developers with PHP 7.3, PHP 7.2, PHP 7.1, PHP 7.0, Nginx, OpenLiteSpeed, Apache HTTP Server, and Lighttpd. ![PHP.earth](https://cdn.rawgit.com/phpearth/logo/master/svg/indigo_300x300.svg "PHP.earth") * Fast and simple PHP extensions installation * Optional Composer installation * Optional PHPUnit installation * [runit](http://smarden.org/runit/) for running multiple services without overhead * Alpine base image with [PHP.earth PHP repositories](https://docs.php.earth/linux/alpine) * Optimized Docker image sizes * Multiple PHP versions ## Documentation Documentation with Docker and PHP recipes is available on [PHP.earth](https://docs.php.earth/docker). ## Docker tags The following list contains all current Docker tags and what is included in each. | System | Docker Tag | Features | Size | | ------ | ---------- | -------- | ---- | | **PHP 7.4.0alpha1**@Alpine 3.9.4 | [`7.4`](https://github.com/phpearth/docker-php/tree/master/docker/7.4.Dockerfile) | Small PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4.svg)](https://microbadger.com/images/phpearth/php:7.4 "Image size") | | | [`7.4-cli`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-cli.Dockerfile) | PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-cli.svg)](https://microbadger.com/images/phpearth/php:7.4-cli "Image size") | | | [`7.4-lighttpd`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-lighttpd.Dockerfile) | Lighttpd 1.4.52 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-lighttpd.svg)](https://microbadger.com/images/phpearth/php:7.4-lighttpd "Image size") | | | [`7.4-litespeed`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-litespeed.Dockerfile) | OpenLiteSpeed 1.5.0 RC3 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-litespeed.svg)](https://microbadger.com/images/phpearth/php:7.4-litespeed "Image size") | | | [`7.4-nginx`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-nginx.Dockerfile) | Nginx 1.14.2, FPM | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-nginx.svg)](https://microbadger.com/images/phpearth/php:7.4-nginx "Image size") | | | [`7.4-apache`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-apache.Dockerfile) | Apache 2.4.39 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-apache.svg)](https://microbadger.com/images/phpearth/php:7.4-apache "Image size") | | | [`7.4-cgi`](https://github.com/phpearth/docker-php/tree/master/docker/7.4-cgi.Dockerfile) | PHP CGI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.4-cgi.svg)](https://microbadger.com/images/phpearth/php:7.4-cgi "Image size") | | **PHP 7.3.4**@Alpine 3.9.3 | [`latest`, `7.3`](https://github.com/phpearth/docker-php/tree/master/docker/7.3.Dockerfile) | Small PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3.svg)](https://microbadger.com/images/phpearth/php:7.3 "Image size") | | | [`7.3-cli`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-cli.Dockerfile) | PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-cli.svg)](https://microbadger.com/images/phpearth/php:7.3-cli "Image size") | | | [`7.3-lighttpd`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-lighttpd.Dockerfile) | Lighttpd 1.4.52 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-lighttpd.svg)](https://microbadger.com/images/phpearth/php:7.3-lighttpd "Image size") | | | [`7.3-litespeed`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-litespeed.Dockerfile) | OpenLiteSpeed 1.5.0 RC3 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-litespeed.svg)](https://microbadger.com/images/phpearth/php:7.3-litespeed "Image size") | | | [`7.3-nginx`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-nginx.Dockerfile) | Nginx 1.14.2, FPM | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-nginx.svg)](https://microbadger.com/images/phpearth/php:7.3-nginx "Image size") | | | [`7.3-apache`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-apache.Dockerfile) | Apache 2.4.38 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-apache.svg)](https://microbadger.com/images/phpearth/php:7.3-apache "Image size") | | | [`7.3-cgi`](https://github.com/phpearth/docker-php/tree/master/docker/7.3-cgi.Dockerfile) | PHP CGI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.3-cgi.svg)](https://microbadger.com/images/phpearth/php:7.3-cgi "Image size") | | **PHP 7.2.17**@Alpine 3.9.3 | [`7.2`](https://github.com/phpearth/docker-php/tree/master/docker/7.2.Dockerfile) | Small PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2.svg)](https://microbadger.com/images/phpearth/php:7.2 "Image size") | | | [`7.2-cli`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-cli.Dockerfile) | PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-cli.svg)](https://microbadger.com/images/phpearth/php:7.2-cli "Image size") | | | [`7.2-lighttpd`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-lighttpd.Dockerfile) | Lighttpd 1.4.52 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-lighttpd.svg)](https://microbadger.com/images/phpearth/php:7.2-lighttpd "Image size") | | | [`7.2-litespeed`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-litespeed.Dockerfile) | OpenLiteSpeed 1.5.0 RC3 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-litespeed.svg)](https://microbadger.com/images/phpearth/php:7.2-litespeed "Image size") | | | [`7.2-nginx`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-nginx.Dockerfile) | Nginx 1.14.2, FPM | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-nginx.svg)](https://microbadger.com/images/phpearth/php:7.2-nginx "Image size") | | | [`7.2-apache`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-apache.Dockerfile) | Apache 2.4.38 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-apache.svg)](https://microbadger.com/images/phpearth/php:7.2-apache "Image size") | | | [`7.2-cgi`](https://github.com/phpearth/docker-php/tree/master/docker/7.2-cgi.Dockerfile) | PHP CGI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.2-cgi.svg)](https://microbadger.com/images/phpearth/php:7.2-cgi "Image size") | | **PHP 7.1.28**@Alpine 3.9.3 | [`7.1`](https://github.com/phpearth/docker-php/tree/master/docker/7.1.Dockerfile) | Small PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1.svg)](https://microbadger.com/images/phpearth/php:7.1 "Image size") | | | [`7.1-cli`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-cli.Dockerfile) | PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-cli.svg)](https://microbadger.com/images/phpearth/php:7.1-cli "Image size") | | | [`7.1-lighttpd`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-lighttpd.Dockerfile) | Lighttpd 1.4.52 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-lighttpd.svg)](https://microbadger.com/images/phpearth/php:7.1-lighttpd "Image size") | | | [`7.1-litespeed`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-litespeed.Dockerfile) | OpenLiteSpeed 1.5.0 RC3 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-litespeed.svg)](https://microbadger.com/images/phpearth/php:7.1-litespeed "Image size") | | | [`7.1-nginx`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-nginx.Dockerfile) | Nginx 1.14.2, FPM | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-nginx.svg)](https://microbadger.com/images/phpearth/php:7.1-nginx "Image size") | | | [`7.1-apache`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-apache.Dockerfile) | Apache 2.4.38 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-apache.svg)](https://microbadger.com/images/phpearth/php:7.1-apache "Image size") | | | [`7.1-cgi`](https://github.com/phpearth/docker-php/tree/master/docker/7.1-cgi.Dockerfile) | PHP CGI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.1-cgi.svg)](https://microbadger.com/images/phpearth/php:7.1-cgi "Image size") | | **PHP 7.0.33**@Alpine 3.7.3 | [`7.0`](https://github.com/phpearth/docker-php/tree/master/docker/7.0.Dockerfile) | Small PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0.svg)](https://microbadger.com/images/phpearth/php:7.0 "Image size") | | | [`7.0-cli`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-cli.Dockerfile) | PHP CLI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-cli.svg)](https://microbadger.com/images/phpearth/php:7.0-cli "Image size") | | | [`7.0-lighttpd`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-lighttpd.Dockerfile) | Lighttpd 1.4.48 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-lighttpd.svg)](https://microbadger.com/images/phpearth/php:7.0-lighttpd "Image size") | | | [`7.0-litespeed`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-litespeed.Dockerfile) | OpenLiteSpeed 1.5.0 RC3 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-litespeed.svg)](https://microbadger.com/images/phpearth/php:7.0-litespeed "Image size") | | | [`7.0-nginx`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-nginx.Dockerfile) | Nginx 1.12.2, FPM | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-nginx.svg)](https://microbadger.com/images/phpearth/php:7.0-nginx "Image size") | | | [`7.0-apache`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-apache.Dockerfile) | Apache 2.4.38 | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-apache.svg)](https://microbadger.com/images/phpearth/php:7.0-apache "Image size") | | | [`7.0-cgi`](https://github.com/phpearth/docker-php/tree/master/docker/7.0-cgi.Dockerfile) | PHP CGI | [![](https://images.microbadger.com/badges/image/phpearth/php:7.0-cgi.svg)](https://microbadger.com/images/phpearth/php:7.0-cgi "Image size") | Tags follow PHP release cycle and [PHP supported versions timeline](http://php.net/supported-versions.php). | PHP | Active Support Until | Security Support Until | Info | | ------- | -------------------- | ---------------------- | ---- | | **7.4** | TBD | TBD | Development 7.4 branch for testing | | **7.3** | TBD | TBD | Current recommended branch for production | | **7.2** | 2019-11-30 | 2020-11-20 | Previous stable branch | | **7.1** | 2018-12-01 | 2019-12-01 | Previous branch for legacy projects | | **7.0** | 2017-12-03 | 2018-12-03 | Previous branch for legacy projects, not supported anymore | ## Quick usage ### Nginx `Dockerfile` for running Nginx HTTP server with PHP FPM: ```Dockerfile FROM phpearth/php:7.3-nginx ``` Build Docker image and run Docker container: ```bash docker build -t custom-php . docker run --name custom-php-container -p 80:80 -d custom-php ``` ### PHP CLI To run a CLI PHP script: ```bash docker run -it --rm -v `pwd`:/usr/src/myapp -w /usr/src/myapp phpearth/php php script.php ``` ### Composer To install Composer: ```Dockerfile FROM phpearth/php:7.3-nginx RUN apk add --no-cache composer ``` ### PHPUnit To install PHPUnit: ```Dockerfile FROM phpearth/php:7.3-nginx RUN apk add --no-cache phpunit ``` ### OpenLiteSpeed To run OpenLiteSpeed web server: ```Dockerfile FROM phpearth/php:7.3-litespeed ``` ### Lighttpd To run Lighttpd web server: ```Dockerfile FROM phpearth/php:7.3-lighttpd ``` ### PHP extensions To install additional PHP extensions, you can use packages from the [PHP.earth Alpine repository](https://docs.php.earth/linux/alpine): ```Dockerfile FROM phpearth/php:7.3-nginx RUN apk add --no-cache php7.3-sodium php7.3-intl php7.3-pdo_mysql ``` or install them with `pecl`: ```bash apk add --no-cache php7.3-dev gcc g++ pecl install {extension-name} ``` ### PHP ini settings To configure extra [php.ini](https://www.php.net/manual/en/ini.php): settings, create application specific `php.ini` and copy the file into docker image: ```ini # php.ini memory_limit = 512M ``` ```Dockerfile FROM phpearth/php:7.3-nginx COPY php.ini $PHP_INI_DIR/conf.d/my-app.ini ``` #### Missing extension? In case you'd need an additional extension in the PHP.earth repository, [open an issue](https://github.com/phpearth/docker-php/issues). ### Docker Stack Docker Stack is way of orchestration of Docker services and simplifies running multiple services of your application. In this example we'll run an Nginx web server with PHP 7.3 FPM with `docker-compose.yml` file. In a new project directory create a `Dockerfile`: ```Dockerfile FROM phpearth/php:7.3-nginx ``` The `docker-compose.yml` file: ```yml version: '3.3' services: app: image: my-dev-image volumes: - .:/var/www/html ports: - mode: host target: 80 published: 80 ``` The `index.php` file: ```php > /etc/apk/repositories \ && apk add --no-cache php7.3 ``` PHP.earth Alpine packages are prefixed with `php7.3`, `php7.2`, `php7.1`, and `php7.0`. ## Building Images Images are automatically build on [Docker Hub](https://hub.docker.com/r/phpearth/php/). Docker Cloud and therefore Docker Hub also provides [overriding and customization](https://docs.docker.com/docker-cloud/builds/advanced/) of various commands when building images automatically. There are some hooks defined in the `docker/hooks` folder: * `hooks/build` - executed when building image * `hooks/post_push` - executed after building image, used to push additional tags to Docker Hub. ### Labels [Labels](https://docs.docker.com/engine/userguide/labels-custom-metadata/) are neat way to expose additional metadata about particular Docker object. We use [Label Schema](http://label-schema.org/) when defining image labels: * `build-date` - Date and time of the build. Defined as `org.label-schema.build-date=$BUILD_DATE`, where `$BUILD_DATE` is set dynamically via above `hooks/build` script * `vcs-url` - Repository location on GitHub. Defined as `org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git"` * `vcs-ref` - Reference to commit in Git repository * `schema-version` - Version of the Label Schema in use. * `vendor` - Vendor name of the image creators. * `name` * `description` * `url` ## License and contributing [Contributions](https://github.com/phpearth/docker-php/blob/master/.github/CONTRIBUTING.md) are most welcome. This repository is released under the [MIT license](https://github.com/phpearth/docker-php/blob/master/LICENSE). ================================================ FILE: docker/7.0-apache.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.0, Apache, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ php7.0-apache2 \ curl \ ca-certificates \ runit \ apache2 \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && mkdir -p /run/apache2 \ && ln -sf /dev/stdout /var/log/apache2/access.log \ && ln -sf /dev/stderr /var/log/apache2/error.log COPY tags/apache / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.0-cgi.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CGI 7.0, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ php7.0-cgi \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.0-cli.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.0, additional PHP extensions, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.0-lighttpd.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.0, Lighttpd, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ lighttpd \ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ php7.0-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS COPY tags/lighttpd / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.0-litespeed.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.0, OpenLiteSpeed, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ curl \ ca-certificates \ runit \ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ php7.0-litespeed \ litespeed \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/lib/litespeed/logs/access.log \ && ln -sf /dev/stderr /var/lib/litespeed/logs/error.log COPY tags/litespeed / EXPOSE 8088 7080 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.0-nginx.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.0, Nginx, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ nginx \ nginx-mod-http-headers-more \ php7.0 \ php7.0-phar \ php7.0-bcmath \ php7.0-calendar \ php7.0-mbstring \ php7.0-exif \ php7.0-ftp \ php7.0-openssl \ php7.0-zip \ php7.0-sysvsem \ php7.0-sysvshm \ php7.0-sysvmsg \ php7.0-shmop \ php7.0-sockets \ php7.0-zlib \ php7.0-bz2 \ php7.0-curl \ php7.0-simplexml \ php7.0-xml \ php7.0-opcache \ php7.0-dom \ php7.0-xmlreader \ php7.0-xmlwriter \ php7.0-tokenizer \ php7.0-ctype \ php7.0-session \ php7.0-fileinfo \ php7.0-iconv \ php7.0-json \ php7.0-posix \ php7.0-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log COPY tags/nginx / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.0.Dockerfile ================================================ FROM alpine:3.7 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.0, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.0 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.0 \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.7" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.1-apache.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.1, Apache, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ php7.1-apache2 \ curl \ ca-certificates \ runit \ apache2 \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && mkdir -p /run/apache2 \ && ln -sf /dev/stdout /var/log/apache2/access.log \ && ln -sf /dev/stderr /var/log/apache2/error.log COPY tags/apache / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.1-cgi.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CGI 7.1, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ php7.1-cgi \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.1-cli.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.1, additional PHP extensions, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.1-lighttpd.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.1, Lighttpd, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ lighttpd \ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ php7.1-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS COPY tags/lighttpd / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.1-litespeed.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.1, OpenLiteSpeed, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ curl \ ca-certificates \ runit \ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ php7.1-litespeed \ litespeed \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/lib/litespeed/logs/access.log \ && ln -sf /dev/stderr /var/lib/litespeed/logs/error.log COPY tags/litespeed / EXPOSE 8088 7080 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.1-nginx.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.1, Nginx, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ nginx \ nginx-mod-http-headers-more \ php7.1 \ php7.1-phar \ php7.1-bcmath \ php7.1-calendar \ php7.1-mbstring \ php7.1-exif \ php7.1-ftp \ php7.1-openssl \ php7.1-zip \ php7.1-sysvsem \ php7.1-sysvshm \ php7.1-sysvmsg \ php7.1-shmop \ php7.1-sockets \ php7.1-zlib \ php7.1-bz2 \ php7.1-curl \ php7.1-simplexml \ php7.1-xml \ php7.1-opcache \ php7.1-dom \ php7.1-xmlreader \ php7.1-xmlwriter \ php7.1-tokenizer \ php7.1-ctype \ php7.1-session \ php7.1-fileinfo \ php7.1-iconv \ php7.1-json \ php7.1-posix \ php7.1-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log COPY tags/nginx / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.1.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.1, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.1 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.1 \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.2-apache.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.2, Apache, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ php7.2-apache2 \ curl \ ca-certificates \ runit \ apache2 \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && mkdir -p /run/apache2 \ && ln -sf /dev/stdout /var/log/apache2/access.log \ && ln -sf /dev/stderr /var/log/apache2/error.log COPY tags/apache / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.2-cgi.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CGI 7.2, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ php7.2-cgi \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.2-cli.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.2, additional PHP extensions, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.2-lighttpd.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.2, Lighttpd, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ lighttpd \ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ php7.2-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS COPY tags/lighttpd / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.2-litespeed.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.2, OpenLiteSpeed, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ curl \ ca-certificates \ runit \ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ php7.2-litespeed \ litespeed \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/lib/litespeed/logs/access.log \ && ln -sf /dev/stderr /var/lib/litespeed/logs/error.log COPY tags/litespeed / EXPOSE 8088 7080 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.2-nginx.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.2, Nginx, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ nginx \ nginx-mod-http-headers-more \ php7.2 \ php7.2-phar \ php7.2-bcmath \ php7.2-calendar \ php7.2-mbstring \ php7.2-exif \ php7.2-ftp \ php7.2-openssl \ php7.2-zip \ php7.2-sysvsem \ php7.2-sysvshm \ php7.2-sysvmsg \ php7.2-shmop \ php7.2-sockets \ php7.2-zlib \ php7.2-bz2 \ php7.2-curl \ php7.2-simplexml \ php7.2-xml \ php7.2-opcache \ php7.2-dom \ php7.2-xmlreader \ php7.2-xmlwriter \ php7.2-tokenizer \ php7.2-ctype \ php7.2-session \ php7.2-fileinfo \ php7.2-iconv \ php7.2-json \ php7.2-posix \ php7.2-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log COPY tags/nginx / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.2.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.2, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.2 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.2 \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache --virtual .build-deps $BUILD_DEPS \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.3-apache.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.3, Apache, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ php7.3-apache2 \ curl \ ca-certificates \ runit \ apache2 \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && mkdir -p /run/apache2 \ && ln -sf /dev/stdout /var/log/apache2/access.log \ && ln -sf /dev/stderr /var/log/apache2/error.log COPY tags/apache / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.3-cgi.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CGI 7.3, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ php7.3-cgi \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.3-cli.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.3, additional PHP extensions, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.3-lighttpd.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.3, Lighttpd, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ lighttpd \ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ php7.3-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS COPY tags/lighttpd / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.3-litespeed.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.3, OpenLiteSpeed, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ curl \ ca-certificates \ runit \ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ php7.3-litespeed \ litespeed \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/lib/litespeed/logs/access.log \ && ln -sf /dev/stderr /var/lib/litespeed/logs/error.log COPY tags/litespeed / EXPOSE 8088 7080 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.3-nginx.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.3, Nginx, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ nginx \ nginx-mod-http-headers-more \ php7.3 \ php7.3-phar \ php7.3-bcmath \ php7.3-calendar \ php7.3-mbstring \ php7.3-exif \ php7.3-ftp \ php7.3-openssl \ php7.3-zip \ php7.3-sysvsem \ php7.3-sysvshm \ php7.3-sysvmsg \ php7.3-shmop \ php7.3-sockets \ php7.3-zlib \ php7.3-bz2 \ php7.3-curl \ php7.3-simplexml \ php7.3-xml \ php7.3-opcache \ php7.3-dom \ php7.3-xmlreader \ php7.3-xmlwriter \ php7.3-tokenizer \ php7.3-ctype \ php7.3-session \ php7.3-fileinfo \ php7.3-iconv \ php7.3-json \ php7.3-posix \ php7.3-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log COPY tags/nginx / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.3.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.3, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.3 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.3 \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache --virtual .build-deps $BUILD_DEPS \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.4-apache.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.4, Apache, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ php7.4-apache2 \ curl \ ca-certificates \ runit \ apache2 \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && mkdir -p /run/apache2 \ && ln -sf /dev/stdout /var/log/apache2/access.log \ && ln -sf /dev/stderr /var/log/apache2/error.log COPY tags/apache / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.4-cgi.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CGI 7.4, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ php7.4-cgi \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.4-cli.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.4, additional PHP extensions, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/7.4-lighttpd.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.4, Lighttpd, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ lighttpd \ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ php7.4-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS COPY tags/lighttpd / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.4-litespeed.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.4, OpenLiteSpeed, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ curl \ ca-certificates \ runit \ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ php7.4-litespeed \ litespeed \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/lib/litespeed/logs/access.log \ && ln -sf /dev/stderr /var/lib/litespeed/logs/error.log COPY tags/litespeed / EXPOSE 8088 7080 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.4-nginx.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP 7.4, Nginx, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ nginx \ nginx-mod-http-headers-more \ php7.4 \ php7.4-phar \ php7.4-bcmath \ php7.4-calendar \ php7.4-mbstring \ php7.4-exif \ php7.4-ftp \ php7.4-openssl \ php7.4-zip \ php7.4-sysvsem \ php7.4-sysvshm \ php7.4-sysvmsg \ php7.4-shmop \ php7.4-sockets \ php7.4-zlib \ php7.4-bz2 \ php7.4-curl \ php7.4-simplexml \ php7.4-xml \ php7.4-opcache \ php7.4-dom \ php7.4-xmlreader \ php7.4-xmlwriter \ php7.4-tokenizer \ php7.4-ctype \ php7.4-session \ php7.4-fileinfo \ php7.4-iconv \ php7.4-json \ php7.4-posix \ php7.4-fpm \ curl \ ca-certificates \ runit \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache $DEPS \ && ln -sf /dev/stdout /var/log/nginx/access.log \ && ln -sf /dev/stderr /var/log/nginx/error.log COPY tags/nginx / EXPOSE 80 CMD ["/sbin/runit-wrapper"] ================================================ FILE: docker/7.4.Dockerfile ================================================ FROM alpine:3.9 ARG BUILD_DATE ARG VCS_REF LABEL org.label-schema.build-date=$BUILD_DATE \ org.label-schema.vcs-url="https://github.com/phpearth/docker-php.git" \ org.label-schema.vcs-ref=$VCS_REF \ org.label-schema.schema-version="1.0" \ org.label-schema.vendor="PHP.earth" \ org.label-schema.name="docker-php" \ org.label-schema.description="Docker For PHP Developers - Docker image with PHP CLI 7.4, and Alpine" \ org.label-schema.url="https://github.com/phpearth/docker-php" # PHP_INI_DIR to be symmetrical with official php docker image ENV PHP_INI_DIR /etc/php/7.4 # When using Composer, disable the warning about running commands as root/super user ENV COMPOSER_ALLOW_SUPERUSER=1 # Persistent runtime dependencies ARG DEPS="\ php7.4 \ curl \ ca-certificates \ " # PHP.earth Alpine repository for better developer experience ADD https://repos.php.earth/alpine/phpearth.rsa.pub /etc/apk/keys/phpearth.rsa.pub RUN set -x \ && echo "https://repos.php.earth/alpine/v3.9" >> /etc/apk/repositories \ && apk add --no-cache --virtual .build-deps $BUILD_DEPS \ && apk add --no-cache $DEPS CMD ["php", "-a"] ================================================ FILE: docker/hooks/build ================================================ #!/bin/bash TAG=$(echo $IMAGE_NAME| cut -d':' -f 2) echo "Build hook running" docker build --build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \ --build-arg VCS_REF=`git rev-parse --short HEAD` \ -t $IMAGE_NAME -f $TAG.Dockerfile . ================================================ FILE: docker/hooks/post_push ================================================ #!/bin/bash TAG=$(echo $IMAGE_NAME| cut -d':' -f 2) if [ "$TAG" == "7.3" ]; then docker tag $IMAGE_NAME $DOCKER_REPO:latest docker push $DOCKER_REPO:latest fi ================================================ FILE: docker/tags/apache/etc/service/apache/run ================================================ #!/bin/sh exec 2>&1 source /env exec /usr/sbin/httpd -D FOREGROUND ================================================ FILE: docker/tags/apache/sbin/runit-wrapper ================================================ #!/bin/sh main() { # Dump environment export > /env trap onterm SIGTERM SIGINT echo "Starting runit" /sbin/runsvdir-start & wait "$!" } onterm() { echo "Exiting..." pkill -SIGHUP runsvdir-start exit $? } main "$@" ================================================ FILE: docker/tags/apache/sbin/runsvdir-start ================================================ #!/bin/sh export PATH=/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin exec runsvdir -P /etc/service ================================================ FILE: docker/tags/lighttpd/etc/lighttpd/example.conf ================================================ server.document-root = "/var/www/localhost/htdocs/" server.port = 80 server.username = "lighttpd" server.groupname = "lighttpd" mimetype.assign = ( ".html" => "text/html", ".txt" => "text/plain", ".jpg" => "image/jpeg", ".png" => "image/png" ) static-file.exclude-extensions = ( ".fcgi", ".php", ".rb", "~", ".inc" ) index-file.names = ( "index.html", "index.php" ) server.modules += ( "mod_fastcgi" ) fastcgi.server = ( ".php" => ("localhost" => ( "socket" => "/run/php/php-fpm.sock" ) ) ) ================================================ FILE: docker/tags/lighttpd/etc/service/lighttpd/run ================================================ #!/bin/sh exec 2>&1 source /env exec /usr/sbin/lighttpd -D -f /etc/lighttpd/example.conf ================================================ FILE: docker/tags/lighttpd/etc/service/php-fpm/run ================================================ #!/bin/sh exec 2>&1 source /env exec php-fpm --nodaemonize ================================================ FILE: docker/tags/lighttpd/sbin/runit-wrapper ================================================ #!/bin/sh main() { # Dump environment export > /env trap onterm SIGTERM SIGINT echo "Starting runit" /sbin/runsvdir-start & wait "$!" } onterm() { echo "Exiting..." pkill -SIGHUP runsvdir-start exit $? } main "$@" ================================================ FILE: docker/tags/lighttpd/sbin/runsvdir-start ================================================ #!/bin/sh export PATH=/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin exec runsvdir -P /etc/service ================================================ FILE: docker/tags/lighttpd/var/www/localhost/htdocs/index.php ================================================ &1 source /env exec sh /var/lib/litespeed/bin/lswsctrl start ================================================ FILE: docker/tags/litespeed/sbin/runit-wrapper ================================================ #!/bin/sh main() { # Dump environment export > /env trap onterm SIGTERM SIGINT echo "Starting runit" /sbin/runsvdir-start & wait "$!" } onterm() { echo "Exiting..." pkill -SIGHUP runsvdir-start exit $? } main "$@" ================================================ FILE: docker/tags/litespeed/sbin/runsvdir-start ================================================ #!/bin/sh export PATH=/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin exec runsvdir -P /etc/service ================================================ FILE: docker/tags/nginx/etc/nginx/conf.d/default.conf ================================================ server { listen 80 default_server; root /var/www/html; index index.html index.htm index.php; server_name _; charset utf-8; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { log_not_found off; access_log off; } location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { fastcgi_pass unix:/run/php/php-fpm.sock; include fastcgi.conf; } error_page 404 /index.php; location ~ /\.ht { deny all; } } ================================================ FILE: docker/tags/nginx/etc/service/nginx/run ================================================ #!/bin/sh exec 2>&1 source /env mkdir -p /run/nginx exec /usr/sbin/nginx -g 'daemon off;' ================================================ FILE: docker/tags/nginx/etc/service/php-fpm/run ================================================ #!/bin/sh exec 2>&1 source /env exec php-fpm --nodaemonize ================================================ FILE: docker/tags/nginx/sbin/runit-wrapper ================================================ #!/bin/sh main() { # Dump environment export > /env trap onterm SIGTERM SIGINT echo "Starting runit" /sbin/runsvdir-start & wait "$!" } onterm() { echo "Exiting..." pkill -SIGHUP runsvdir-start exit $? } main "$@" ================================================ FILE: docker/tags/nginx/sbin/runsvdir-start ================================================ #!/bin/sh export PATH=/usr/local/bin:/usr/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin exec runsvdir -P /etc/service ================================================ FILE: docker/tags/nginx/var/www/html/index.php ================================================ /dev/null ./test || ((i++)) popd > /dev/null } if [ "$tests" = "all" ]; then for x in */;do run $x done else for test in $tests; do run $test done fi exit $i