Skip to content

Commit 00df369

Browse files
ganlbestlong
authored andcommitted
Add IonCube Loader (zend_extension) (laradock#1763)
1 parent 902198a commit 00df369

5 files changed

Lines changed: 56 additions & 0 deletions

File tree

DOCUMENTATION/content/documentation/index.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,28 @@ Note: If `.php-fpm/xdebug` doesn't execute and gives `Permission Denied` error t
353353

354354

355355

356+
<br>
357+
<a name="Install-ionCube-Loader"></a>
358+
## Install ionCube Loader
359+
360+
1 - First install `ionCube Loader` in the Workspace and the PHP-FPM Containers:
361+
<br>
362+
a) open the `.env` file
363+
<br>
364+
b) search for the `WORKSPACE_INSTALL_IONCUBE` argument under the Workspace Container
365+
<br>
366+
c) set it to `true`
367+
<br>
368+
d) search for the `PHP_FPM_INSTALL_IONCUBE` argument under the PHP-FPM Container
369+
<br>
370+
e) set it to `true`
371+
372+
2 - Re-build the containers `docker-compose build workspace php-fpm`
373+
374+
Always download the latest version of [Loaders for ionCube ](http://www.ioncube.com/loaders.php).
375+
376+
377+
356378

357379

358380
<br>

docker-compose.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ services:
9090
- INSTALL_PG_CLIENT=${WORKSPACE_INSTALL_PG_CLIENT}
9191
- INSTALL_SWOOLE=${WORKSPACE_INSTALL_SWOOLE}
9292
- INSTALL_LIBPNG=${WORKSPACE_INSTALL_LIBPNG}
93+
- INSTALL_IONCUBE=${WORKSPACE_INSTALL_IONCUBE}
9394
- PUID=${WORKSPACE_PUID}
9495
- PGID=${WORKSPACE_PGID}
9596
- CHROME_DRIVER_VERSION=${WORKSPACE_CHROME_DRIVER_VERSION}
@@ -148,6 +149,7 @@ services:
148149
- INSTALL_IMAGEMAGICK=${PHP_FPM_INSTALL_IMAGEMAGICK}
149150
- INSTALL_CALENDAR=${PHP_FPM_INSTALL_CALENDAR}
150151
- INSTALL_FAKETIME=${PHP_FPM_INSTALL_FAKETIME}
152+
- INSTALL_IONCUBE=${PHP_FPM_INSTALL_IONCUBE}
151153
volumes:
152154
- ./php-fpm/php${PHP_VERSION}.ini:/usr/local/etc/php/php.ini
153155
- ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER}

env-example

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,7 @@ WORKSPACE_INSTALL_DUSK_DEPS=false
116116
WORKSPACE_INSTALL_PG_CLIENT=false
117117
WORKSPACE_INSTALL_SWOOLE=false
118118
WORKSPACE_INSTALL_LIBPNG=false
119+
WORKSPACE_INSTALL_IONCUBE=false
119120
WORKSPACE_PUID=1000
120121
WORKSPACE_PGID=1000
121122
WORKSPACE_CHROME_DRIVER_VERSION=2.32
@@ -153,6 +154,7 @@ PHP_FPM_INSTALL_PG_CLIENT=false
153154
PHP_FPM_INSTALL_PCNTL=false
154155
PHP_FPM_INSTALL_CALENDAR=false
155156
PHP_FPM_INSTALL_FAKETIME=false
157+
PHP_FPM_INSTALL_IONCUBE=false
156158
PHP_FPM_FAKETIME=-0
157159

158160
### PHP_WORKER ############################################

php-fpm/Dockerfile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,6 +342,21 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \
342342
&& docker-php-ext-enable aerospike \
343343
;fi
344344

345+
###########################################################################
346+
# IonCube Loader:
347+
###########################################################################
348+
349+
ARG INSTALL_IONCUBE=false
350+
351+
RUN if [ ${INSTALL_IONCUBE} = true ]; then \
352+
# Install the php ioncube loader
353+
curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \
354+
&& tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \
355+
&& mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \
356+
&& printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \
357+
&& rm -rf /tmp/ioncube* \
358+
;fi
359+
345360
###########################################################################
346361
# Opcache:
347362
###########################################################################

workspace/Dockerfile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -397,6 +397,21 @@ RUN if [ ${INSTALL_LIBPNG} = true ]; then \
397397
apt install libpng16-16 \
398398
;fi
399399

400+
###########################################################################
401+
# IonCube Loader
402+
###########################################################################
403+
404+
ARG INSTALL_IONCUBE=false
405+
406+
RUN if [ ${INSTALL_IONCUBE} = true ]; then \
407+
# Install the php ioncube loader
408+
curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \
409+
&& tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \
410+
&& mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \
411+
&& echo "zend_extension=ioncube_loader.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/0ioncube.ini \
412+
&& rm -rf /tmp/ioncube* \
413+
;fi
414+
400415
###########################################################################
401416
# Drupal Console:
402417
###########################################################################

0 commit comments

Comments
 (0)