- Notifications
You must be signed in to change notification settings - Fork0
Up to date Docker images for PHP 7.4, 8.0, 8.1, 8.2, 8.3 development and production, as well as Alpine Linux images with zsh shell.
License
williarin/docker-images
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This repository contains various Docker images to be used in web softwares.
Starting from 3.20, the production image is almost the same as the official alpine. The timezone is set to UTC.
Versions 3.19 (and below) and 3.20-dev include tools to enhance manual interaction inside the container.
Tools included in the dev version (3.19 and below, 3.20-dev and above):
- zsh with
zsh-autosuggestions
andzsh-syntax-highlighting
plugins - Oh My Zsh with a beautiful prompt
- exa modern replacement for
ls
Aliases are already defined to replacels
withexa
:
alias ls="exa --icons --group-directories-first"alias l="exa -aaghl --git --icons --group-directories-first"alias ll="exa -ghl --git --icons --group-directories-first"alias lt="exa --tree --level=2 --icons --group-directories-first"
Try it:
# Connect as rootdocker run --rm -it williarin/alpine:dev# Connect as current userdocker run --rm -it -u'1000:1000' williarin/alpine:dev
Note:latest
is equivalent to3.20
anddev
is equivalent to3.20-dev
Images are built once a week at 00:00 on Monday.
All PHP images are based on Alpine Linux 3.20 (williarin/alpine). They come withbash
,curl
,zip
,unzip
and widely used PHP extensions.
Installed PHP extensions:
json
,ctype
,curl
,dom
,ftp
,gd
,iconv
,intl
,mbstring
,mysqlnd
,openssl
,pdo
,pdo_sqlite
,pdo_mysql
,pdo_pgsql
,pear
,phar
,posix
,session
,sqlite3
,xml
,xmlreader
,zip
,zlib
,opcache
,tokenizer
,simplexml
,xmlwriter
,fileinfo
,sodium
Additionally,-dev
versions come with Xdebug 3, Git and Make.
All the images are pre-built with a userwww-data
and a group with the same name. Generally there is no need to run containers withroot
privileges, so we advise the following:
Specify a --user name and set the working directory on docker runs, e.g.:
docker run --user www-data -w /home/www-data --rm williarin/php:8.2-dev bash -c"php -v | grep 'Xdebug'"
Confirm it by running:
docker run --user www-data -w /home/www-data --rm williarin/php:8.2-dev bash -c"id ; env"
You can easily add PHP extensions using Alpine package manager.
As an example, create a new image with this Dockerfile to add exif extension to PHP:
FROM williarin/php:8.2-fpmRUN apk add --no-cache \ php8-exif \ ;
About
Up to date Docker images for PHP 7.4, 8.0, 8.1, 8.2, 8.3 development and production, as well as Alpine Linux images with zsh shell.