diff --git a/.travis.yml b/.travis.yml index ccbb38dc..03e4e584 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,10 +4,39 @@ services: - docker env: - matrix: - - PHP_VERSION=56 - - PHP_VERSION=70 - - PHP_VERSION=71 + matrix: + - PHP_VERSION=56 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis" + - PHP_VERSION=70 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis" + - PHP_VERSION=71 BUILD_SERVICE="applications blackfire minio percona nginx caddy apache2 mysql mariadb phpmyadmin postgres postgres-postgis pgadmin neo4j mongo redis" + + - PHP_VERSION=56 BUILD_SERVICE=workspace + - PHP_VERSION=70 BUILD_SERVICE=workspace + - PHP_VERSION=71 BUILD_SERVICE=workspace + + - PHP_VERSION=56 BUILD_SERVICE=php-fpm + - PHP_VERSION=70 BUILD_SERVICE=php-fpm + - PHP_VERSION=71 BUILD_SERVICE=php-fpm + + - PHP_VERSION=56 BUILD_SERVICE="php-worker hhvm" + - PHP_VERSION=70 BUILD_SERVICE="php-worker hhvm" + - PHP_VERSION=71 BUILD_SERVICE="php-worker hhvm" + + - PHP_VERSION=56 BUILD_SERVICE=mssql + - PHP_VERSION=70 BUILD_SERVICE=mssql + - PHP_VERSION=71 BUILD_SERVICE=mssql + + - PHP_VERSION=56 BUILD_SERVICE=rethinkdb + - PHP_VERSION=70 BUILD_SERVICE=rethinkdb + - PHP_VERSION=71 BUILD_SERVICE=rethinkdb + + - PHP_VERSION=56 BUILD_SERVICE=aerospike + - PHP_VERSION=70 BUILD_SERVICE=aerospike + - PHP_VERSION=71 BUILD_SERVICE=aerospike + + - PHP_VERSION=56 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer" + - PHP_VERSION=70 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer" + - PHP_VERSION=71 BUILD_SERVICE="memcached beanstalkd beanstalkd-console rabbitmq adminer elasticsearch certbot mailhog selenium jenkins proxy proxy2 balancer" + - HUGO_VERSION=0.20.2 # Installing a newer Docker version diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70 index 1c7a1b2c..91c6f524 100644 --- a/php-fpm/Dockerfile-70 +++ b/php-fpm/Dockerfile-70 @@ -205,86 +205,6 @@ RUN if [ ${INSTALL_TOKENIZER} = true ]; then \ docker-php-ext-install tokenizer \ ;fi -##################################### -# SQL SERVER: -##################################### - -ARG MSSQL=false -RUN if [ ${MSSQL} = true ]; then \ - - ##################################### - # Install Depenencies: - ##################################### - apt-get update && \ - apt-get install -y --force-yes wget apt-transport-https curl freetds-common php5-odbc libsybdb5 freetds-bin unixodbc unixodbc-dev php5-sybase && \ - - ##################################### - # The following steps were taken from - # Microsoft's github account: - # https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways - ##################################### - - # Add PHP 7 repository - # for Debian jessie - # And System upgrade - echo "deb http://packages.dotdeb.org jessie all" \ - | tee /etc/apt/sources.list.d/dotdeb.list \ - && wget -qO- https://www.dotdeb.org/dotdeb.gpg \ - | apt-key add - \ - && apt-get update \ - && apt-get upgrade -qq && \ - - # Install UnixODBC - # Compile odbc_config as it is not part of unixodbc package - apt-get install -y whiptail \ - unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \ - && dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \ - && cd unixodbc-*/ \ - && dpkg-buildpackage -uc -us -B -d \ - && cp -v ./exe/odbc_config /usr/local/bin/ && \ - - # Fake uname for install.sh - printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \ - | tee /usr/local/bin/uname \ - && chmod +x /usr/local/bin/uname && \ - - # Microsoft ODBC Driver 13 for Linux - # Note: There's a copy of this tar on my hubiC - wget -nv -O msodbcsql-13.0.0.0.tar.gz \ - "https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \ - && tar -xf msodbcsql-13.0.0.0.tar.gz \ - && cd msodbcsql-*/ \ - && ldd lib64/libmsodbcsql-13.0.so.0.0 \ - && ./install.sh install --accept-license \ - && ls -l /opt/microsoft/msodbcsql/ \ - && odbcinst -q -d -n "ODBC Driver 13 for SQL Server" \ - - ##################################### - # Install pdo_dblib - ##################################### - - && docker-php-ext-install pdo \ - && docker-php-ext-configure pdo_dblib --with-libdir=/lib/x86_64-linux-gnu \ - && docker-php-ext-install pdo_dblib \ - && docker-php-ext-enable pdo_dblib && \ - - ##################################### - # Install sqlsrv y pdo_sqlsrv - # extensions: - ##################################### - - pecl install sqlsrv-4.1.7preview && \ - pecl install pdo_sqlsrv-4.1.7preview && \ - - ##################################### - # Set locales for the container - ##################################### - - apt-get install -y locales \ - && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ - && locale-gen \ -;fi - ##################################### # Human Language and Character Encoding Support: ##################################### @@ -373,8 +293,8 @@ RUN if [ ${INSTALL_MSSQL} = true ]; then \ # extensions: ##################################### - pecl install sqlsrv-4.1.7 && \ - pecl install pdo_sqlsrv-4.1.7 && \ + pecl install sqlsrv-4.0.8 && \ + pecl install pdo_sqlsrv-4.0.8 && \ ##################################### # Set locales for the container @@ -383,8 +303,8 @@ RUN if [ ${INSTALL_MSSQL} = true ]; then \ apt-get install -y locales \ && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ && locale-gen \ - && echo "extension=sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-sqlsrv.ini \ - && echo "extension=pdo_sqlsrv.so" > /etc/php/7.0/cli/conf.d/20-pdo_sqlsrv.ini \ + && echo "extension=sqlsrv.so" > /usr/local/etc/php/conf.d/20-sqlsrv.ini \ + && echo "extension=pdo_sqlsrv.so" > /usr/local/etc/php/conf.d/20-pdo_sqlsrv.ini \ ;fi # @@ -393,7 +313,7 @@ RUN if [ ${INSTALL_MSSQL} = true ]; then \ #-------------------------------------------------------------------------- # -ADD ./laravel.ini /usr/local/etc/php/conf.d +ADD ./laravel.ini /usr/local/etc/php/conf.d/ ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/ #RUN rm -r /var/lib/apt/lists/* diff --git a/php-fpm/Dockerfile-71 b/php-fpm/Dockerfile-71 index 17e87d2b..9cb54cd9 100644 --- a/php-fpm/Dockerfile-71 +++ b/php-fpm/Dockerfile-71 @@ -205,86 +205,6 @@ RUN if [ ${INSTALL_TOKENIZER} = true ]; then \ docker-php-ext-install tokenizer \ ;fi -##################################### -# SQL SERVER: -##################################### - -ARG MSSQL=false -RUN if [ ${MSSQL} = true ]; then \ - - ##################################### - # Install Depenencies: - ##################################### - apt-get update && \ - apt-get install -y --force-yes wget apt-transport-https curl freetds-common php5-odbc libsybdb5 freetds-bin unixodbc unixodbc-dev php5-sybase && \ - - ##################################### - # The following steps were taken from - # Microsoft's github account: - # https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways - ##################################### - - # Add PHP 7 repository - # for Debian jessie - # And System upgrade - echo "deb http://packages.dotdeb.org jessie all" \ - | tee /etc/apt/sources.list.d/dotdeb.list \ - && wget -qO- https://www.dotdeb.org/dotdeb.gpg \ - | apt-key add - \ - && apt-get update \ - && apt-get upgrade -qq && \ - - # Install UnixODBC - # Compile odbc_config as it is not part of unixodbc package - apt-get install -y whiptail \ - unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \ - && dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \ - && cd unixodbc-*/ \ - && dpkg-buildpackage -uc -us -B -d \ - && cp -v ./exe/odbc_config /usr/local/bin/ && \ - - # Fake uname for install.sh - printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \ - | tee /usr/local/bin/uname \ - && chmod +x /usr/local/bin/uname && \ - - # Microsoft ODBC Driver 13 for Linux - # Note: There's a copy of this tar on my hubiC - wget -nv -O msodbcsql-13.0.0.0.tar.gz \ - "https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \ - && tar -xf msodbcsql-13.0.0.0.tar.gz \ - && cd msodbcsql-*/ \ - && ldd lib64/libmsodbcsql-13.0.so.0.0 \ - && ./install.sh install --accept-license \ - && ls -l /opt/microsoft/msodbcsql/ \ - && odbcinst -q -d -n "ODBC Driver 13 for SQL Server" \ - - ##################################### - # Install pdo_dblib - ##################################### - - && docker-php-ext-install pdo \ - && docker-php-ext-configure pdo_dblib --with-libdir=/lib/x86_64-linux-gnu \ - && docker-php-ext-install pdo_dblib \ - && docker-php-ext-enable pdo_dblib && \ - - ##################################### - # Install sqlsrv y pdo_sqlsrv - # extensions: - ##################################### - - pecl install sqlsrv-4.1.7preview && \ - pecl install pdo_sqlsrv-4.1.7preview && \ - - ##################################### - # Set locales for the container - ##################################### - - apt-get install -y locales \ - && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ - && locale-gen \ -;fi - ##################################### # Human Language and Character Encoding Support: ##################################### @@ -312,6 +232,81 @@ RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \ ghostscript \ ;fi +##################################### +# SQL SERVER: +##################################### +ARG INSTALL_MSSQL=false +ENV INSTALL_MSSQL ${INSTALL_MSSQL} + +RUN if [ ${INSTALL_MSSQL} = true ]; then \ + ##################################### + # Install Depenencies: + ##################################### + apt-get update && \ + apt-get install -y --force-yes wget apt-transport-https curl freetds-common libsybdb5 freetds-bin unixodbc unixodbc-dev && \ + + ##################################### + # The following steps were taken from + # Microsoft's github account: + # https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-getting-pdo_sqlsrv-for-PHP-7.0-on-Debian-in-3-ways + ##################################### + + # Add PHP 7 repository + # for Debian jessie + # And System upgrade + echo "deb http://packages.dotdeb.org jessie all" \ + | tee /etc/apt/sources.list.d/dotdeb.list \ + && wget -qO- https://www.dotdeb.org/dotdeb.gpg \ + | apt-key add - \ + && apt-get update \ + && apt-get upgrade -qq && \ + + # Install UnixODBC + # Compile odbc_config as it is not part of unixodbc package + apt-get update && \ + apt-get install -y whiptail \ + unixodbc libgss3 odbcinst devscripts debhelper dh-exec dh-autoreconf libreadline-dev libltdl-dev \ + && dget -u -x http://http.debian.net/debian/pool/main/u/unixodbc/unixodbc_2.3.1-3.dsc \ + && cd unixodbc-*/ \ + && ./configure && make && make install \ + && cp -v ./exe/odbc_config /usr/local/bin/ && \ + + # Fake uname for install.sh + printf '#!/bin/bash\nif [ "$*" == "-p" ]; then echo "x86_64"; else /bin/uname "$@"; fi' \ + | tee /usr/local/bin/uname \ + && chmod +x /usr/local/bin/uname && \ + + # Microsoft ODBC Driver 13 for Linux + # Note: There's a copy of this tar on my hubiC + wget -nv -O msodbcsql-13.0.0.0.tar.gz \ + "https://meetsstorenew.blob.core.windows.net/contianerhd/Ubuntu%2013.0%20Tar/msodbcsql-13.0.0.0.tar.gz?st=2016-10-18T17%3A29%3A00Z&se=2022-10-19T17%3A29%3A00Z&sp=rl&sv=2015-04-05&sr=b&sig=cDwPfrouVeIQf0vi%2BnKt%2BzX8Z8caIYvRCmicDL5oknY%3D" \ + && tar -xf msodbcsql-13.0.0.0.tar.gz \ + && cd msodbcsql-*/ \ + && ldd lib64/libmsodbcsql-13.0.so.0.0 \ + && ./install.sh install --accept-license \ + && ls -l /opt/microsoft/msodbcsql/ \ + && odbcinst -q -d -n "ODBC Driver 13 for SQL Server" && \ + + + ##################################### + # Install sqlsrv y pdo_sqlsrv + # extensions: + ##################################### + + pecl install sqlsrv-4.0.8 && \ + pecl install pdo_sqlsrv-4.0.8 && \ + + ##################################### + # Set locales for the container + ##################################### + + apt-get install -y locales \ + && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ + && locale-gen \ + && echo "extension=sqlsrv.so" > /usr/local/etc/php/conf.d/20-sqlsrv.ini \ + && echo "extension=pdo_sqlsrv.so" > /usr/local/etc/php/conf.d/20-pdo_sqlsrv.ini \ +;fi + # #-------------------------------------------------------------------------- # Final Touch diff --git a/travis-build.sh b/travis-build.sh index 8cabad86..66223d03 100755 --- a/travis-build.sh +++ b/travis-build.sh @@ -15,7 +15,7 @@ if [ -n "${PHP_VERSION}" ]; then sed -i -- "s/PHP_VERSION=.*/PHP_VERSION=${PHP_VERSION}/g" .env sed -i -- 's/=false/=true/g' .env cat .env - docker-compose build + docker-compose build ${BUILD_SERVICE} docker images fi diff --git a/workspace/Dockerfile-70 b/workspace/Dockerfile-70 index f5dc718f..b4b7af32 100644 --- a/workspace/Dockerfile-70 +++ b/workspace/Dockerfile-70 @@ -458,8 +458,8 @@ RUN if [ ${INSTALL_MSSQL} = true ]; then \ # extensions: ##################################### - pecl install sqlsrv-4.0.6 && \ - pecl install pdo_sqlsrv-4.0.6 && \ + pecl install sqlsrv-4.0.8 && \ + pecl install pdo_sqlsrv-4.0.8 && \ ##################################### # Set locales for the container diff --git a/workspace/Dockerfile-71 b/workspace/Dockerfile-71 index 6d4ee3f2..f6ad96fb 100644 --- a/workspace/Dockerfile-71 +++ b/workspace/Dockerfile-71 @@ -454,8 +454,8 @@ RUN if [ ${INSTALL_MSSQL} = true ]; then \ # extensions: ##################################### - pecl install sqlsrv-4.0.6 && \ - pecl install pdo_sqlsrv-4.0.6 && \ + pecl install sqlsrv-4.0.8 && \ + pecl install pdo_sqlsrv-4.0.8 && \ ##################################### # Set locales for the container