Skip to content

Commit 45bb5d6

Browse files
committed
PHP 7.3 com Opcache
1 parent 0907ef5 commit 45bb5d6

File tree

2 files changed

+33
-18
lines changed

2 files changed

+33
-18
lines changed

Dockerfile

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
# Container Base
2-
FROM php:7.2-apache
2+
FROM php:7.3-apache
33

44
ENV http_proxy ${HTTP_PROXY}
55
ENV https_proxy ${HTTP_PROXY}
66
ENV XDEBUG_ENABLED=false
7+
ENV XDEBUG_VERSION="-2.7.0beta1"
78
ENV NR_ENABLED=false
89
ENV NR_APP_NAME=""
910
ENV NR_LICENSE_KEY=""
11+
ENV NR_VERSION=""
12+
ENV PHP_BUILD_DATE="20180731"
13+
ENV PHP_OPCACHE_ENABLED=false
1014
ENV SESSION_HANDLER=false
1115
ENV SESSION_HANDLER_NAME=""
1216
ENV SESSION_HANDLER_PATH=""
1317

14-
RUN apt-get update && apt-get install -y wget vim supervisor zip libfreetype6-dev libjpeg62-turbo-dev \
18+
RUN apt-get update && apt-get install -y wget vim supervisor libfreetype6-dev libjpeg62-turbo-dev \
1519
libmcrypt-dev libpng-dev libssl-dev libaio1 git libcurl4-openssl-dev libxslt-dev \
1620
libldap2-dev libicu-dev libc-client-dev libkrb5-dev libsqlite3-dev libedit-dev \
17-
sudo
21+
sudo zlib1g zlib1g-dev libzip4 libzip-dev zip
1822

1923
RUN a2enmod rewrite
2024

@@ -25,19 +29,31 @@ RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-di
2529
&& docker-php-ext-install -j$(nproc) bcmath \
2630
gd pdo_mysql calendar exif gettext \
2731
hash xsl ldap intl imap \
28-
pcntl shmop soap sockets wddx zip
32+
pcntl shmop soap sockets wddx
2933

3034
RUN pecl install redis \
31-
&& echo "extension=redis.so" >> /usr/local/etc/php/conf.d/redis.ini
35+
&& docker-php-ext-enable redis
36+
37+
RUN echo "---> Adding xDebug" && \
38+
pecl install xdebug${XDEBUG_VERSION}
39+
40+
RUN echo "---> Adding Zip" && \
41+
pecl install zip && \
42+
docker-php-ext-enable zip
43+
44+
RUN echo "---> Configure Opcache" && \
45+
docker-php-ext-install opcache && \
46+
echo "opcache.enable=0" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini && \
47+
echo "opcache.enable_cli=0" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini
3248

3349
RUN echo "---> Adding Support for NewRelic" && \
3450
mkdir /tmp/newrelic /scripts/ && \
3551
cd /tmp/newrelic && \
3652
wget -r -l1 -nd -A"linux.tar.gz" https://download.newrelic.com/php_agent/release/ && \
3753
gzip -dc newrelic*.tar.gz | tar xf - && \
3854
cd newrelic-php5* && \
39-
rm -f /usr/local/lib/php/extensions/no-debug-non-zts-20170718/newrelic.so && \
40-
cp ./agent/x64/newrelic-20170718.so /usr/local/lib/php/extensions/no-debug-non-zts-20170718/newrelic.so && \
55+
rm -f /usr/local/lib/php/extensions/no-debug-non-zts-${PHP_BUILD_DATE}/newrelic.so && \
56+
cp ./agent/x64/newrelic-${PHP_BUILD_DATE}.so /usr/local/lib/php/extensions/no-debug-non-zts-${PHP_BUILD_DATE}/newrelic.so && \
4157
cp ./daemon/newrelic-daemon.x64 /usr/bin/newrelic-daemon && \
4258
cp ./scripts/newrelic.ini.template /scripts/newrelic.ini && \
4359
mkdir /var/log/newrelic && \
@@ -54,9 +70,8 @@ RUN echo "---> Config sudoers" && \
5470
RUN echo "---> Fix Logs permissions" && \
5571
chown -R www-data:www-data /var/log/apache2
5672

57-
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin/ --filename=composer
58-
59-
RUN pecl install xdebug
73+
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin/ --filename=composer && \
74+
mkdir /var/www/.composer && chown -R www-data:www-data /var/www/.composer
6075

6176
COPY configs/ports.conf /etc/apache2/ports.conf
6277
COPY apache-run.sh /usr/bin/apache-run

apache-run.sh

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
#!/bin/bash
22

3-
if [[ $XDEBUG_ENABLED == true ]]; then
4-
echo "zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so" | sudo tee -a /usr/local/etc/php/conf.d/xdebug.ini
3+
if [[ ${XDEBUG_ENABLED} == true ]]; then
4+
echo "zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-${PHP_BUILD_DATE}/xdebug.so" | sudo tee -a /usr/local/etc/php/conf.d/xdebug.ini
55
echo "xdebug.var_display_max_depth=5" | sudo tee -a /usr/local/etc/php/conf.d/xdebug.ini
66
fi
77

8-
if [[ $NR_ENABLED == true ]]; then
9-
sudo sed -i -e "s/"REPLACE_WITH_REAL_KEY"/$NR_LICENSE_KEY/g" /scripts/newrelic.ini
10-
sudo sed -i -e "s/PHP Application/$NR_APP_NAME/g" /scripts/newrelic.ini
8+
if [[ ${NR_ENABLED} == true ]]; then
9+
sudo sed -i -e "s/"REPLACE_WITH_REAL_KEY"/${NR_LICENSE_KEY}/g" /scripts/newrelic.ini
10+
sudo sed -i -e "s/PHP Application/${NR_APP_NAME}/g" /scripts/newrelic.ini
1111
sudo cp /scripts/newrelic.ini /usr/local/etc/php/conf.d/newrelic.ini
1212
fi
1313

14-
if [[ $SESSION_HANDLER == true ]]; then
15-
echo "session.save_handler = $SESSION_HANDLER_NAME" | sudo tee -a /usr/local/etc/php/conf.d/session-handler.ini
16-
echo "session.save_path = $SESSION_HANDLER_PATH" | sudo tee -a /usr/local/etc/php/conf.d/session-handler.ini
14+
if [[ ${SESSION_HANDLER} == true ]]; then
15+
echo "session.save_handler = ${SESSION_HANDLER_NAME}" | sudo tee -a /usr/local/etc/php/conf.d/session-handler.ini
16+
echo "session.save_path = ${SESSION_HANDLER_PATH}" | sudo tee -a /usr/local/etc/php/conf.d/session-handler.ini
1717
fi
1818

1919
sudo rm -rf var/cache/* var/logs/* &&

0 commit comments

Comments
 (0)