* Added newlines

* Added newline

* Improved docs

* Added PHP docs

* Updated versions

* Added br

* CR
This commit is contained in:
Dor 2019-04-22 20:21:41 +03:00 коммит произвёл Gabriel Castro
Родитель b15f92e44f
Коммит 523463f425
5 изменённых файлов: 102 добавлений и 10 удалений

Просмотреть файл

@ -33,6 +33,7 @@ Runtime | Version
Python | 2.7<br />3.6, 3.7
Node.js | 4.4, 4.5, 4.8<br />6.2, 6.6, 6.9, 6.10, 6.11<br />8.0, 8.1, 8.2, 8.8, 8.9, 8.11, 8.12<br />9.4<br />10.1, 10.10, 10.14, 10.15
.NET Core | 1.0, 1.1<br />2.0, 2.1, 2.2
PHP | 5.6<br />7.0, 7.2, 7.3
Patches (0.0.**x**) are applied as soon as possible after they are released upstream.

Просмотреть файл

@ -35,8 +35,8 @@ The following process is applied for each build.
1. Run custom script if specified by `PRE_BUILD_SCRIPT_PATH`.
1. Run `npm install` without any flags, which includes npm `preinstall` and
`postinstall` scripts and also installs devDependencies.
1. Run `npm run build` if a `build` script is specified.
1. Run `npm run build:azure` if a `build:azure` script is specified.
1. Run `npm run build` if a `build` script is specified in your `package.json`.
1. Run `npm run build:azure` if a `build:azure` script is specified in your `package.json`.
1. Run custom script if specified by `POST_BUILD_SCRIPT_PATH`.
> NOTE: As described in [npm docs][], scripts named `prebuild` and `postbuild`
@ -60,7 +60,7 @@ will be used instead of npm.
The following process is applied to determine how to start an app.
1. Run `npm start` if a `start` script is specified.
1. If a script is specified in package.json's `main` field run that.
1. Else, if a script is specified in `package.json`'s `main` field, run that.
1. Run the first found of the following scripts in the root of the repo:
* bin/www
* server.js

91
doc/runtimes/php.md Normal file
Просмотреть файл

@ -0,0 +1,91 @@
This document describes how **PHP** apps are detected and built. It includes
details on components and configuration of build and run images too.
# Contents
1. [Base Image](#base-image)
* [System packages](#system-packages)
1. [Detect](#detect)
1. [Build](#build)
* [Package manager](#package-manager)
1. [Run](#run)
1. [Version support](#version-support)
# Base image
PHP runtime images are layered on Docker's [official PHP
images](https://github.com/docker-library/php).
## System packages
The Apache HTTP Server is used as the application server.
The following PHP extensions are installed & enabled in the runtime images:
* gd
* imagick
* mysqli
* opcache
* odbc
* sqlsrv
* pdo
* pdo_sqlsrv
* pdo_mysql
* pdo_pgsql
* pgsql
* ldap
* intl
* gmp
* zip
* bcmath
* mbstring
* pcntl
* calendar
* exif
* gettext
* imap
* tidy
* shmop
* soap
* sockets
* sysvmsg
* sysvsem
* sysvshm
* pdo_odbc
* wddx
* xmlrpc
* xsl
# Detect
The PHP toolset is run when a `composer.json` file exists in the root of the repository.
# Build
The following process is applied for each build:
1. Run custom script if specified by `PRE_BUILD_SCRIPT_PATH`.
1. Run `php composer.phar install`.
1. Run custom script if specified by `POST_BUILD_SCRIPT_PATH`.
## Package manager
The latest version of *Composer* is used to install dependencies.
# Run
The following process is applied to determine how to start an app:
1. If user has specified a start script, run it.
1. Else, run `apache2-foreground`.
[Composer]: https://getcomposer.org/
# Version support
The PHP project defines this [release schedule][]. Oryx supports all actively supported
releases (7.2, 7.3), in addition to 5.6 & 7.0.
We will update the `patch` version of a release at least once every 3 months,
replacing the previous `patch` version for that release.
[release schedule]: https://www.php.net/supported-versions.php

Просмотреть файл

@ -55,8 +55,8 @@ The latest version of `pip` is used to install dependencies.
The following process is applied to determine how to start an app.
1. If user has specified a start script utilize that.
1. Find a WSGI module and run with [gunicorn][].
1. If user has specified a start script, run it.
1. Else, find a WSGI module and run with [gunicorn][].
1. Look for and run a directory containing a `wsgi.py` file (*for Django*).
1. Look for the following files in the root of the repo and an `app` class within them (*for Flask* and other WSGI frameworks).
* `application.py`
@ -82,8 +82,8 @@ status, i.e. `3.7.x` and `2.7.x` in early 2019; and 3.6 and later releases in
We will provide notification twelve months prior to removing a release line;
subscribe to [Azure Updates][] to stay updated!
We will update the `micro` version of supported `major.minor` releases at
least once every 3 months, replacing the previous `micro` version for that
We will update the `patch` version of supported `major.minor` releases at
least once every 3 months, replacing the previous `patch` version for that
release.
[release schedule]: https://devguide.python.org/#status-of-python-branches