• Stars
    star
    129
  • Rank 279,262 (Top 6 %)
  • Language
    Dockerfile
  • License
    Apache License 2.0
  • Created over 4 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lightweight & optimized Multi-Arch Docker Images (x86_64/arm/arm64) for PHP-FPM (PHP 8.0, 8.1, 8.2) with essential extensions on top of latest Alpine Linux. 🐘

Alpine PHP-FPM

Lightweight & optimized Multi-Arch Docker Images (x86_64/arm/arm64) for PHP-FPM (PHP 8.1, 8.2, 8.3) with essential extensions on top of latest Alpine Linux. 🐘

Stable versions

v8.1 v8.2 v8.3
Docker Image 8.1 (tag 8.1 semver)
Docker Image Size (tag)
Docker Image 8.2 (tag 8.2 semver)
Docker Image Size (tag)
Docker Image Version (tag latest semver)
Docker Image Size (tag)

Note: we only provide stable PHP versions.

Built-in extensions

curl, ftp, hash (mhash), libedit, libsodium, mbstring, mysqlnd, openssl, password-argon2, pdo-sqlite, pear, sqlite3, zlib

Additional extensions

Extension v8.1 v8.2 v8.3
amqp βœ“ βœ“ βœ“
apcu βœ“ βœ“ βœ“
bcmath βœ“ βœ“ βœ“
bz2 βœ“ βœ“ βœ“
exif βœ“ βœ“ βœ“
gd βœ“ βœ“ βœ“
gettext βœ“ βœ“ βœ“
gmp βœ“ βœ“ βœ“
imagick βœ“ βœ“ ?
igbinary βœ“ βœ“ ?
imap βœ“ βœ“ βœ“
intl βœ“ βœ“ βœ“
lz4 βœ“ βœ“ ?
mcrypt ? ? ?
memcache βœ“ βœ“ βœ“
mongodb βœ“ βœ“ βœ“
msgpack βœ“ βœ“ ?
mysqli βœ“ βœ“ βœ“
oauth βœ“ βœ“ βœ“
opcache βœ“ βœ“ βœ“
pcntl βœ“ βœ“ βœ“
pdo_dblib βœ“ βœ“ βœ“
pdo_mysql βœ“ βœ“ βœ“
pdo_pgsql βœ“ βœ“ βœ“
pdo_sqlsrv βœ“ (64-bit only) βœ“ (64-bit only) βœ“ (64-bit only)
pgsql βœ“ βœ“ βœ“
phalcon βœ“ βœ“ ?
psr βœ“ βœ“ βœ“
redis βœ“ βœ“ βœ“
rdkafka βœ“ βœ“ βœ“
soap βœ“ βœ“ βœ“
sockets βœ“ βœ“ βœ“
sqlsrv βœ“ (64-bit only) βœ“ (64-bit only) βœ“ (64-bit only)
ssh2 βœ“ βœ“ βœ“
swoole βœ“ (64-bit only) βœ“ (64-bit only) βœ“ (64-bit only)
sysvmsg βœ“ βœ“ βœ“
sysvsem βœ“ βœ“ βœ“
sysvshm βœ“ βœ“ βœ“
tidy βœ“ βœ“ βœ“
uuid βœ“ βœ“ ?
vips βœ“ βœ“ βœ“
xdebug βœ“ βœ“ ?
xsl βœ“ βœ“ βœ“
yaml βœ“ βœ“ βœ“
zip βœ“ βœ“ βœ“
zstd βœ“ βœ“ βœ“
Β  Β  Β  Β 
Others
composer v2.6 v2.6 v2.6

Footnotes

(?) It means that this extension is obsolete/unmaintained/discouraged or simply is not supported yet.

List all extensions included

If you want to know the whole list of the included extensions then use php -m as follows.

docker run --rm joseluisq/php-fpm:8.3 php -m

Or use php -i to get more detailed information.

Usage

docker pull joseluisq/php-fpm:8.3
# Or
docker pull joseluisq/php-fpm:8.2
# Or
docker pull joseluisq/php-fpm:8.1

🐳 Available on Docker Hub β†’ hub.docker.com/r/joseluisq/php-fpm

Dockerfile

FROM joseluisq/php-fpm:8.3
# Or
FROM joseluisq/php-fpm:8.2
# Or
FROM joseluisq/php-fpm:8.1

Run a container

To give a Docker image a quick try, just execute any of those commands and then navigate to localhost:8088

docker run --rm -p 8088:80 joseluisq/php-fpm:8.3 sh -c "echo '<?php phpinfo();' > index.php; php -S [::]:80 -t ."
# Or
docker run --rm -p 8088:80 joseluisq/php-fpm:8.2 sh -c "echo '<?php phpinfo();' > index.php; php -S [::]:80 -t ."
# Or
docker run --rm -p 8088:80 joseluisq/php-fpm:8.1 sh -c "echo '<?php phpinfo();' > index.php; php -S [::]:80 -t ."

View Docker Compose Examples

Default Paths

  • Default Docker working directory: /var/www/html
  • Additional PHP .ini files to load: /usr/local/etc/php/conf.d
  • Custom PHP .ini file generated (only if ENV_SUBSTITUTION_ENABLE=true): /usr/local/etc/php/conf.d/default-php.ini

Configurable Environment Variables

PHP-FPM and PHP configurations can be overwritten using environment variables. To do so, just indicate the substitution of values using ENV_SUBSTITUTION_ENABLE=true (since it is disabled by default).

Below are the environment variables with their default values:

PHP-FPM

Global FPM

Settings replaced into /usr/local/etc/php-fpm.conf file.

  • PHP_FPM_ERROR_LOG=/proc/self/fd/2
  • PHP_FPM_LOG_LEVEL=error

FPM WWW Pool

Settings replaced into /usr/local/etc/php-fpm.d/www.conf file.

  • PHP_FPM_LISTEN=9000
  • PHP_FPM_USER=www-data
  • PHP_FPM_GROUP=www-data
  • PHP_FPM_LISTEN_OWNER=www-data
  • PHP_FPM_LISTEN_GROUP=www-data

PHP Config

Settings replaced into /usr/local/etc/php/conf.d/default-php.ini file (php.ini).

  • PHP_MEMORY_LIMIT=512M
  • PHP_EXPOSE_PHP=On
  • PHP_SESSION_GC_MAXLIFETIME=1440

Docker Compose Examples

docker-compose examples for Nginx and Apache servers can be found under the ./examples directory.

Nginx example

docker-compose -f examples/nginx/docker-compose.yml up

Apache example

docker-compose -f examples/apache/docker-compose.yml up

Contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in current work by you, as defined in the Apache-2.0 license, shall be dual licensed as described below, without any additional terms or conditions.

Feel free to send some pull request or file an issue.

License

This work is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

Β© 2020-present Jose Quintana

More Repositories

1

gitnow

Speed up your Git workflow. 🐠
Shell
328
star
2

gimage

A PHP library for easy image handling. πŸ–Ό
PHP
151
star
3

rust-linux-darwin-builder

Use the same Docker image to cross-compile Rust x86_64/ARM64 programs for Linux and macOS (osxcross).
Dockerfile
94
star
4

printd

Print HTML elements or pages in modern browsers.
TypeScript
73
star
5

prelodr

A simple Material preloader inspired by Google Inbox.
JavaScript
68
star
6

awesome-bash-commands

A curated list of awesome Bash useful commands. Inspired by awesome-shell and bash-handbook.
Shell
52
star
7

macosx-sdks

Some Mac OS X SDKs for development purposes with osxcross.
51
star
8

paket

A simple and fast package manager for the Fish shell written in Rust. 🐠
Rust
50
star
9

hyperapp-starter

Minimal Hyperapp, Typescript and Parcel starter. πŸ“¦πŸš€πŸŽ‰
TypeScript
43
star
10

slendr

A responsive & lightweight (2KB gzipped) slider for modern browsers. [UNMAINTAINED]
TypeScript
38
star
11

ubigeos-peru

Datos JSON y SQL sobre departamentos, provincias y distritos del PerΓΊ.
PHP
34
star
12

sortboard

A small ES6 library for easy sorting and filtering of elements.
TypeScript
29
star
13

fastify-cluster-example

A simple example of how to running a Fastify server in multi-threaded mode.
TypeScript
22
star
14

timelite

String date and time utilities πŸ•™
TypeScript
17
star
15

vue-vform

Vue.js 2 form component that integrates jQuery Validation and Axios.
Vue
15
star
16

pokemons

Full JSON file with every PokΓ©mon basic info. Useful for prototyping.
13
star
17

go-tspath

A fast and persistent Typescript paths replacer written in Go.
Go
13
star
18

vue-input-number

A custom input number component for Vue.js 2
Vue
13
star
19

preact-starter

Minimal Preact, Typescript and Parcel starter. πŸš€
TypeScript
12
star
20

jquery.xfilterlist

[Deprecated] A simple jQuery grid list plugin for easy filter and sorting.
HTML
10
star
21

alpine-cgit

Multi-Arch Docker images for the hyperfast web frontend for Git repositories on top of Alpine and Nginx.
Dockerfile
10
star
22

awesome-mysql-queries-commands

🐬 A curated list of awesome MySQL useful queries and commands.
10
star
23

printd-vue-component-example

Example of printing a Vue 2 component using Printd.
JavaScript
9
star
24

codeigniter3-hmvc-boilerplate

Boilerplate for creating CodeIgniter 3 HMVC with Propel 2 ORM and OAuth2
PHP
8
star
25

enve

Cross-platform tool to run a program in a modified environment providing a .env file.
Go
7
star
26

git-cheat-sheet

Another Git cheat sheet yet :octocat:
6
star
27

docker-mysql-client

MySQL 8 client programs with easy database export and import functionality.
Dockerfile
6
star
28

koa-graphql-rethinkdb

GraphQL API Server example using Koa, Apollo GraphQL Server & RethinkDB. πŸš€
TypeScript
6
star
29

git-useful-aliases

Small list of useful Git aliases.
Shell
6
star
30

karma-jasmine-typescript

Sample of Unit Testing using Karma, Jasmine and Typescript.
JavaScript
5
star
31

utetris

Custom Mootools web version of famouse Tetris game.
JavaScript
5
star
32

jquery.xrequest

[Deprecated] Simple plugin to Ajax Request
CSS
5
star
33

helipad

A cross-platform, lightweight and fast CI/CD Server/Client written in Rust (WIP).
Rust
5
star
34

vue-typescript-starter

Tiny Vue 2 & Typescript frontend starter. πŸš€
JavaScript
5
star
35

alpine-mysql-client

Docker MySQL (MariaDB) client with easy export and import tools.
Shell
5
star
36

react-prelodr

A React component based on Prelodr.
JavaScript
4
star
37

svexport

Small PHP character-separated values exporter (CSV and TSV).
PHP
4
star
38

peru-geojson-datasets

Estructuras de datos geogrΓ‘ficos GeoJSON representando departamentos, provincias y distritos del PerΓΊ.
4
star
39

sprintfit

A fast 450b sprintf & vsprintf format specifier focused on strings with no dependencies. ⚑️
TypeScript
4
star
40

micro-one-dark

One Dark colorcheme for Micro.
Lua
4
star
41

ruta

A lightweight HTTP routing library for PHP 8+ without external dependencies. (WIP)
PHP
4
star
42

uFilterGrid

[Deprecated] A simple Mootools grid list plugin for easy filter and sorting.
HTML
4
star
43

laravel-ci-deployment

Laravel 5.4 + Circle CI + Deployer example
PHP
4
star
44

nano-crypto

Nano ID + Crypto utility functions with full Typescript support.
TypeScript
3
star
45

php-bitbucket-deployment

Simple PHP script to automatic Bitbucket deployment.
PHP
3
star
46

json-datasets

Example of various datasets in JSON format for different purposes.
3
star
47

cline

A fast and lightweight CLI package for Go without external dependencies.
Go
3
star
48

alpine-curl

An unofficial multi-arch cURL Docker image using latest Alpine Linux with Zstandard support.
Dockerfile
3
star
49

leap

A lightweight micro HTTP framework for PHP 8.1+ (experimental)
PHP
2
star
50

nginx-freebsd-server-configs

Small configs for run Nginx 1.10.1 on FreeBSD 10.2 + SSL
Nginx
2
star
51

gutr-css

Hackable gutters for your box model.
CSS
2
star
52

es6-browserify-gulp-boilerplate

A simple ES6 Babel, Browserify and Gulp boilerplate.
JavaScript
2
star
53

semver-aliases

A simple Go package to create deduplicated version aliases based on valid SemVer release names.
Go
2
star
54

lumen-54-boilerplate

Lumen 5.4 boilerplate for starting your first API.
PHP
2
star
55

lumen-restful-boilerplate

A simple boilerplate to start your first RESTfull API with PHP Lumen
PHP
2
star
56

fedora-sublime-text-3-sh-installer

Sublime Text 3 Shell Installer for Fedora Linux x64
Shell
2
star
57

kde-app-launcher-archlinux-icons

ArchLinux icon variants for KDE Plasma 5 application launcher.
2
star
58

video-source-url

Get video source from Youtube or Vimeo URL.
JavaScript
2
star
59

slim3-todos-example

ToDo API example using PHP Slim 3, Laravel Eloquent and SQLite 3.
PHP
2
star
60

grunt-deployit

Deploy your files easily using FTP.
JavaScript
2
star
61

iterm2-material-theme

Material color theme for iTerm2 inspired in Sublime Material Theme.
2
star
62

tslint-config-standard-plus

A TSLint config for JavaScript Standard Style with a plus of useful rules.
TypeScript
2
star
63

peru-elecciones-generales-2021-scraper

JSON Scraper de las Elecciones Generales PerΓΊ 2021.
Dart
2
star
64

gitd

Use Git to fetch all source files from any repository. :octocat:
JavaScript
1
star
65

deno-examples

Some Deno examples for NodeJS Meetup Leipzig #3
TypeScript
1
star
66

fastify-dockerized-sample

Very bare sample of a dockerized Fastify server
JavaScript
1
star
67

seqr

A small ES6 package for execute functions sequentially.
JavaScript
1
star
68

echo-dockerclient

Tiny Echo middleware for Go Docker Client.
Go
1
star
69

atom-essentials

Some essential packages for more friendly development in Atom.
Shell
1
star
70

docker-alpine-nginx-php7

Docker Nginx & PHP 7 image on the top of Alpine Linux. 🐳 [UNMAINTENATED] Use instead https://github.com/joseluisq/alpine-php-fpm
Nginx
1
star
71

php-oauth2-demo

Example using OAuth2
PHP
1
star
72

uslider

Simple Mootools CSS3 Adaptable Slider
JavaScript
1
star
73

emitus

Small Typescript Event Emitter. ⚑
TypeScript
1
star
74

node-sass-app-compiler

AplicaciΓ³n Nodejs para compilar Sass usando Libsass y GruntJS.
JavaScript
1
star
75

usize

Useful Mootools class for resize DOM objects
JavaScript
1
star
76

composer-essentials

Some PHP Composer global packages.
Shell
1
star
77

hacker-news-stream

The Hacker News top stories but in Streams.
JavaScript
1
star
78

umessagebox

Simple Mootools modal messagebox
JavaScript
1
star
79

rpasswd

A small and secure password generator and encryptor tool.
Go
1
star
80

ng-util-directives

Some Angular 1.x useful directives
JavaScript
1
star
81

codeigniter-composer-boilerplate

A boilerplate for getting started with latest CodeIgniter using Composer.
1
star
82

golang-code-examples

Some code examples of my GoLang learning πŸŽ“
Go
1
star
83

ffds

Small script for build a fast Front-End directory structure.
Shell
1
star
84

myftp

A PHP small class for FTP handling.
PHP
1
star
85

angular-apollo-client-starter

Example using Angular 4 & Apollo Client
TypeScript
1
star
86

react-app-boilerplate

Create React App bootstrap but customized + config files.
JavaScript
1
star
87

rust-tspath

A Typescript paths replacer written in Rust. ⚑ Supersed by https://github.com/joseluisq/go-tspath
Rust
1
star
88

php-ga-tracking-redirect

Simple PHP Google Analytic Tracking with custom 301 redirection.
PHP
1
star
89

node-random-strings-demo

Random strings demo using Budo + Browserify
HTML
1
star
90

angular-fbxnd

Angular 1.x bindings for JavaScript Facebook SDK
1
star
91

awesome-medium-programming

A curated list of interesting Medium Programming Articles.
1
star
92

react-boilerplate

Another React boilerplate.
JavaScript
1
star
93

minimal-boilerplate

Minimal Front-End boilerplate with npm run tasks built-in.
HTML
1
star
94

fedora-atom-sh-installer

Atom shell installer for Fedora Linux x86_x64
Shell
1
star
95

mydb

A small PHP Data Objects extension class for database handling.
PHP
1
star
96

sleep-non-blocking-function

Deno & Node examples implementing a non-blocking sleep function.
TypeScript
1
star
97

goipcc

A simple Unix IPC Socket client for Go. For more flexibility try joseluisq/gonetc instead.
Go
1
star