├── Dockerfile ├── README.md ├── instantclient-basic-linux.x64-12.1.0.2.0.zip └── instantclient-sdk-linux.x64-12.1.0.2.0.zip /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM php:7.2 2 | 3 | RUN apt-get update && apt-get install -qqy git unzip libfreetype6-dev \ 4 | libjpeg62-turbo-dev \ 5 | libpng-dev \ 6 | libaio1 wget && apt-get clean autoclean && apt-get autoremove --yes && rm -rf /var/lib/{apt,dpkg,cache,log}/ 7 | #composer 8 | RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer 9 | 10 | # ORACLE oci 11 | RUN mkdir /opt/oracle \ 12 | && cd /opt/oracle 13 | 14 | ADD instantclient-basic-linux.x64-12.1.0.2.0.zip /opt/oracle 15 | ADD instantclient-sdk-linux.x64-12.1.0.2.0.zip /opt/oracle 16 | 17 | # Install Oracle Instantclient 18 | RUN unzip /opt/oracle/instantclient-basic-linux.x64-12.1.0.2.0.zip -d /opt/oracle \ 19 | && unzip /opt/oracle/instantclient-sdk-linux.x64-12.1.0.2.0.zip -d /opt/oracle \ 20 | && ln -s /opt/oracle/instantclient_12_1/libclntsh.so.12.1 /opt/oracle/instantclient_12_1/libclntsh.so \ 21 | && ln -s /opt/oracle/instantclient_12_1/libclntshcore.so.12.1 /opt/oracle/instantclient_12_1/libclntshcore.so \ 22 | && ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so \ 23 | && rm -rf /opt/oracle/*.zip 24 | 25 | ENV LD_LIBRARY_PATH /opt/oracle/instantclient_12_1:${LD_LIBRARY_PATH} 26 | 27 | # Install Oracle extensions 28 | RUN echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8 \ 29 | && docker-php-ext-enable \ 30 | oci8 \ 31 | && docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/opt/oracle/instantclient_12_1,12.1 \ 32 | && docker-php-ext-install \ 33 | pdo_oci 34 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # docker-php-oci8 2 | 3 | Docker image with php 7.2, oci8, pdo_oci, oracle instant_client 12 4 | 5 | 6 | ## Usage 7 | 8 | ```docker run donvito/php-oci8 php -m``` 9 | 10 | It will list all php module, including oci8 and pdo_oci 11 | 12 | So you can connect to Oracle DB with php :) 13 | 14 | -------------------------------------------------------------------------------- /instantclient-basic-linux.x64-12.1.0.2.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vitoo/docker-php-oci8/776966d874c020f19d1349ac3cb03cee9efa78a9/instantclient-basic-linux.x64-12.1.0.2.0.zip -------------------------------------------------------------------------------- /instantclient-sdk-linux.x64-12.1.0.2.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vitoo/docker-php-oci8/776966d874c020f19d1349ac3cb03cee9efa78a9/instantclient-sdk-linux.x64-12.1.0.2.0.zip --------------------------------------------------------------------------------