mirror of
https://github.com/macintoshplus/php.git
synced 2026-03-24 17:02:12 +01:00
Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8bc2da72ba | ||
|
|
36c93b4421 | ||
|
|
a2ef1c9061 | ||
|
|
48b2725b85 | ||
|
|
3175f50878 | ||
|
|
27e912cc36 | ||
|
|
9f87921367 | ||
|
|
d5a93aa197 | ||
|
|
7625c0fe08 | ||
|
|
87a48e67f2 | ||
|
|
95a913adf2 | ||
|
|
7007fb688b | ||
|
|
5d0752a106 | ||
|
|
cec8a53db7 | ||
|
|
7374c8b343 | ||
|
|
695087a680 | ||
|
|
ec10c5af00 | ||
|
|
34945d5900 | ||
|
|
f38d429d22 | ||
|
|
402053c3ea | ||
|
|
bd3b3f0106 | ||
|
|
ab9580849c | ||
|
|
c4ceeabe2f | ||
|
|
af5df3e3f7 | ||
|
|
3f58759f92 | ||
|
|
6c9907979a | ||
|
|
f9e9db1981 | ||
|
|
baa6a738f8 | ||
|
|
925c9cf4bb | ||
|
|
79bcd2c5d9 | ||
|
|
43399f05d6 | ||
|
|
12a051cdfc | ||
|
|
cc00a4619a | ||
|
|
6c4da24cc3 | ||
|
|
7c6c993a35 | ||
|
|
7ec17bef49 | ||
|
|
2e5fc4bc25 | ||
|
|
a781e36c7a | ||
|
|
11ea1eb2c6 | ||
|
|
38903f30f4 | ||
|
|
332a1f50d6 | ||
|
|
8fd569655a | ||
|
|
a7a4eb5331 | ||
|
|
88338162d9 |
36
Dockerfile
36
Dockerfile
@@ -1,40 +1,20 @@
|
||||
##
|
||||
# Jb Nahan PHP 7.1 container
|
||||
# Jb Nahan PHP 7.2 container
|
||||
##
|
||||
|
||||
FROM macintoshplus/php:base
|
||||
MAINTAINER Jean-Baptiste Nahan <jean-baptiste@nahan.fr>
|
||||
MAINTAINER Jean-Baptiste Nahan <814683+macintoshplus@users.noreply.github.com>
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
ARG uid=1000
|
||||
ARG gid=1000
|
||||
|
||||
COPY certs/ /root/
|
||||
RUN apt-key add /root/sury.gpg
|
||||
RUN echo "deb https://packages.sury.org/php/ stretch main" > /etc/apt/sources.list.d/sury-php.list
|
||||
COPY install.sh /root/install.sh
|
||||
RUN chmod +x /root/install.sh
|
||||
RUN /root/install.sh
|
||||
|
||||
# PHP
|
||||
RUN apt-get update && apt-get upgrade -y && apt-get -y install php7.1-dev php7.1-cli php7.1-curl php-pear php7.1-imagick php7.1-gd php7.1-mcrypt php7.1-mbstring php7.1-mysql php7.1-sqlite3 php7.1-xmlrpc php7.1-xsl php7.1-xdebug php7.1-apcu php7.1-ldap php7.1-gmp php7.1-intl php-redis php7.1-zip php7.1-soap php7.1-xml php7.1-common
|
||||
RUN sed -i 's/\;date\.timezone\ \=/date\.timezone\ \=\ Europe\/Paris/g' /etc/php/7.1/cli/php.ini
|
||||
RUN sed -i 's/\memory_limit\ \=\ 128M/memory_limit\ \=\ -1/g' /etc/php/7.1/cli/php.ini
|
||||
RUN sed -i 's/\display_errors\ \=\ Off/display_errors\ \=\ On/g' /etc/php/7.1/cli/php.ini
|
||||
RUN sed -i 's/disable_functions\ \=\ pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,/\;disable_functions\ \=\ pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,/g' /etc/php/7.1/cli/php.ini
|
||||
|
||||
RUN pecl channel-update pecl.php.net
|
||||
RUN pecl install sqlsrv && pecl install pdo_sqlsrv
|
||||
RUN echo "extension=sqlsrv.so" > /etc/php/7.1/mods-available/sqlsrv.ini
|
||||
RUN echo "extension=pdo_sqlsrv.so" > /etc/php/7.1/mods-available/pdo_sqlsrv.ini
|
||||
RUN cd /etc/php/7.1/cli/conf.d && ln -s ../../mods-available/sqlsrv.ini 20-sqlsrv.ini
|
||||
RUN cd /etc/php/7.1/cli/conf.d && ln -s ../../mods-available/pdo_sqlsrv.ini 20-pdo_sqlsrv.ini
|
||||
|
||||
#PEAR
|
||||
RUN pear upgrade && pear install pecl/amqp-1.9.1
|
||||
RUN echo "extension=amqp.so" > /etc/php/7.1/mods-available/amqp.ini
|
||||
#RUN cd /etc/php/7.1/apache2/conf.d && ln -s ../../mods-available/amqp.ini 20-amqp.ini
|
||||
RUN cd /etc/php/7.1/cli/conf.d && ln -s ../../mods-available/amqp.ini 20-amqp.ini
|
||||
RUN pear channel-discover pear.phpmd.org && pear channel-discover pear.pdepend.org && pear channel-discover pear.phpdoc.org && pear channel-discover components.ez.no
|
||||
RUN pear install PHP_CodeSniffer && pear install --alldeps phpmd/PHP_PMD
|
||||
|
||||
|
||||
RUN useradd -s /bin/bash --home /sources --no-create-home phpuser
|
||||
COPY bin/fixright /
|
||||
RUN chmod +x /fixright
|
||||
|
||||
|
||||
47
README.md
47
README.md
@@ -1,20 +1,35 @@
|
||||
# php71
|
||||
Docker Image With PHP56 and many tools !
|
||||
# php74
|
||||
Docker Image With PHP 7.4 and many tools !
|
||||
|
||||
Dev tools :
|
||||
## Extensions
|
||||
|
||||
* GIT
|
||||
* SVN
|
||||
* Curl
|
||||
* Wget
|
||||
* Nano
|
||||
* php7.4-dev
|
||||
* php7.4-cli
|
||||
* php7.4-bcmath
|
||||
* php7.4-curl
|
||||
* php7.4-gd
|
||||
* php7.4-mbstring
|
||||
* php7.4-mysql
|
||||
* php7.4-sqlite3
|
||||
* php7.4-xmlrpc
|
||||
* php7.4-xsl
|
||||
* php7.4-ldap
|
||||
* php7.4-gmp
|
||||
* php7.4-intl
|
||||
* php-redis
|
||||
* php7.4-zip
|
||||
* php7.4-soap
|
||||
* php7.4-xml
|
||||
* php7.4-common
|
||||
* php7.4-json
|
||||
* php7.4-opcache
|
||||
* php7.4-readline
|
||||
* php7.4-xdebug
|
||||
* php7.4-imagick
|
||||
* amqp-1.9.3
|
||||
* pdo_sqlsrv
|
||||
* sqlsrv
|
||||
|
||||
Executable tools :
|
||||
## Disabled Extensions
|
||||
|
||||
* wkhtmltopdf
|
||||
* pdftk
|
||||
|
||||
Dev quality :
|
||||
|
||||
* PHP Mess Detector (phpmd)
|
||||
* PHP_CodeSniffer (with Symfony2 rules)
|
||||
php7.4-apcu
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ -d "/src" ]
|
||||
if [ -d "/sources" ]
|
||||
then
|
||||
|
||||
USERID=$(stat -c "%u" /src)
|
||||
GROUPID=$(stat -c "%g" /src)
|
||||
USERID=$(stat -c "%u" /sources)
|
||||
GROUPID=$(stat -c "%g" /sources)
|
||||
|
||||
groupmod -g $GROUPID phpuser
|
||||
usermod -u $USERID -g $GROUPID phpuser
|
||||
|
||||
8
build_image.sh
Executable file
8
build_image.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
DIR=$(dirname $0)
|
||||
|
||||
cd $DIR
|
||||
|
||||
docker build -t php74 --network host .
|
||||
|
||||
64
install.sh
Normal file
64
install.sh
Normal file
@@ -0,0 +1,64 @@
|
||||
#!/bin/sh -ex
|
||||
##
|
||||
# Jb Nahan PHP 7.4 container
|
||||
##
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
# Sury : PHP Sources
|
||||
wget -q -O - https://packages.sury.org/php/apt.gpg | sudo apt-key add -
|
||||
echo "deb https://packages.sury.org/php/ buster main" > /etc/apt/sources.list.d/sury-php.list
|
||||
|
||||
# Blackfire
|
||||
wget -q -O - https://packages.blackfire.io/gpg.key | sudo apt-key add -
|
||||
echo "deb http://packages.blackfire.io/debian any main" | sudo tee /etc/apt/sources.list.d/blackfire.list
|
||||
|
||||
# PHP
|
||||
apt-get update && apt-get upgrade -y
|
||||
apt-get -y install php7.4-dev php7.4-cli php7.4-bcmath php7.4-curl php-pear php7.4-gd php7.4-mbstring php7.4-mysql php7.4-sqlite3 php7.4-xmlrpc php7.4-xsl php7.4-ldap php7.4-gmp php7.4-intl php7.4-zip php7.4-soap php7.4-xml php7.4-common php7.4-json php7.4-opcache php7.4-readline
|
||||
# Disabled ext from repos : php7.4-imagick php7.4-xdebug php7.4-apcu
|
||||
# Disable dependencies : libmagickwand-6.q16-dev
|
||||
# Disabled php-redis
|
||||
|
||||
sed -i 's/\;date\.timezone\ \=/date\.timezone\ \=\ Europe\/Paris/g' /etc/php/7.4/cli/php.ini
|
||||
sed -i 's/\memory_limit\ \=\ 128M/memory_limit\ \=\ -1/g' /etc/php/7.4/cli/php.ini
|
||||
sed -i 's/\display_errors\ \=\ Off/display_errors\ \=\ On/g' /etc/php/7.4/cli/php.ini
|
||||
sed -i 's/disable_functions\ \=\ pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,/\;disable_functions\ \=\ pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,/g' /etc/php/7.4/cli/php.ini
|
||||
|
||||
pecl channel-update pecl.php.net
|
||||
## Fix Tar Error
|
||||
#wget https://github.com/pear/Archive_Tar/releases/download/1.4.3/Archive_Tar-1.4.3.tgz
|
||||
#tar -xvf Archive_Tar-1.4.3.tgz
|
||||
#cp Archive_Tar-1.4.3/Archive/Tar.php /usr/share/php/Archive/Tar.php
|
||||
#rm -rf Archive_Tar-1.4.3
|
||||
|
||||
pecl install sqlsrv-5.6.1
|
||||
pecl install pdo_sqlsrv-5.6.1
|
||||
echo "extension=sqlsrv" > /etc/php/7.4/mods-available/sqlsrv.ini
|
||||
echo "extension=pdo_sqlsrv" > /etc/php/7.4/mods-available/pdo_sqlsrv.ini
|
||||
|
||||
#PEAR
|
||||
pear upgrade
|
||||
pear install pecl/amqp
|
||||
echo "extension=amqp" > /etc/php/7.4/mods-available/amqp.ini
|
||||
|
||||
|
||||
pear install pecl/redis-5.1.1
|
||||
echo "extension=redis" > /etc/php/7.4/mods-available/redis.ini
|
||||
|
||||
apt-get install -y libmagickwand-dev libmagickcore-dev libmagickwand-6.q16-6 libmagickcore-6.q16-6
|
||||
pear install pecl/imagick
|
||||
echo "extension=imagick" > /etc/php/7.4/mods-available/imagick.ini
|
||||
|
||||
|
||||
pear install pecl/xdebug-2.8.0
|
||||
echo "zend_extension=xdebug" > /etc/php/7.4/mods-available/xdebug.ini
|
||||
|
||||
phpenmod -v 7.4 -s cli amqp sqlsrv pdo_sqlsrv redis xdebug imagick
|
||||
|
||||
#useradd -s /bin/bash --home /sources --no-create-home phpuser
|
||||
|
||||
groupadd -g ${gid} phpuser
|
||||
useradd -l -u ${uid} -g ${gid} -m -s /bin/bash phpuser
|
||||
usermod -a -G www-data phpuser
|
||||
|
||||
apt-get remove -y libgcc-8-dev php7.4-dev libmagickwand-dev libmagickcore-dev && apt-get autoremove -y
|
||||
Reference in New Issue
Block a user