From 1962327de10ca5786dca00f0e0007f64e3a5e91d Mon Sep 17 00:00:00 2001 From: Jess Warburton <34153688+jwrbrtn@users.noreply.github.com> Date: Fri, 20 Jul 2018 12:05:31 +1000 Subject: [PATCH 01/10] Corrects folder locations in which to run docker-compose commands for caddy (#1721) --- DOCUMENTATION/content/guides/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/DOCUMENTATION/content/guides/index.md b/DOCUMENTATION/content/guides/index.md index 3cf1f38a..05c72a77 100644 --- a/DOCUMENTATION/content/guides/index.md +++ b/DOCUMENTATION/content/guides/index.md @@ -197,7 +197,7 @@ This is needed Prior to Creating Let's Encypt ## Run Your Caddy Container without the -d flag and Generate SSL with Let's Encrypt ``` -$root@server:~/laravel/laradock/caddy# docker-compose up caddy +$root@server:~/laravel/laradock# docker-compose up caddy ``` You'll be prompt here to enter your email... you may enter it or not @@ -218,8 +218,8 @@ After it finishes, press `Ctrl` + `C` to exit. ## Stop All Containers and ReRun Caddy and Other Containers on Background ``` -$root@server:~/laravel/laradock/caddy# docker-compose down -$root@server:~/laravel/laradock/caddy# docker-compose up -d mysql caddy +$root@server:~/laravel/laradock# docker-compose down +$root@server:~/laravel/laradock# docker-compose up -d mysql caddy ``` View your Site in the Browser Securely Using HTTPS (https://yourdomain.com) From fbc2afee713de17050b77fc563ff2827e29b838c Mon Sep 17 00:00:00 2001 From: vladyslavstartsev Date: Fri, 20 Jul 2018 10:44:07 +0300 Subject: [PATCH 02/10] implemented option to add bcmath to laradock php-worker (#1716) * implemented option to add bcmath to laradock php-worker * updated docs --- DOCUMENTATION/content/documentation/index.md | 1 + docker-compose.yml | 1 + env-example | 1 + php-worker/Dockerfile | 6 ++++++ 4 files changed, 9 insertions(+) diff --git a/DOCUMENTATION/content/documentation/index.md b/DOCUMENTATION/content/documentation/index.md index 745cf237..2097237e 100644 --- a/DOCUMENTATION/content/documentation/index.md +++ b/DOCUMENTATION/content/documentation/index.md @@ -522,6 +522,7 @@ b) add a new service container by simply copy-paste this section below PHP-FPM c context: ./php-worker args: - INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL} #Optionally install PGSQL PHP drivers + - INSTALL_BCMATH=${PHP_WORKER_INSTALL_BCMATH} #Optionally install BCMath php package volumes_from: - applications depends_on: diff --git a/docker-compose.yml b/docker-compose.yml index 9ffde6bd..d9b21128 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -168,6 +168,7 @@ services: args: - PHP_VERSION=${PHP_VERSION} - INSTALL_PGSQL=${PHP_WORKER_INSTALL_PGSQL} + - INSTALL_BCMATH=${PHP_WORKER_INSTALL_BCMATH} volumes: - ${APP_CODE_PATH_HOST}:${APP_CODE_PATH_CONTAINER} - ./php-worker/supervisord.d:/etc/supervisord.d diff --git a/env-example b/env-example index 536a9e98..b928a8e0 100644 --- a/env-example +++ b/env-example @@ -153,6 +153,7 @@ PHP_FPM_INSTALL_CALENDAR=false ### PHP_WORKER ############################################ PHP_WORKER_INSTALL_PGSQL=false +PHP_WORKER_INSTALL_BCMATH=false ### NGINX ################################################# diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile index 158a1664..d7c677d3 100644 --- a/php-worker/Dockerfile +++ b/php-worker/Dockerfile @@ -25,6 +25,12 @@ RUN apk --update add wget \ RUN docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl RUN pecl channel-update pecl.php.net && pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached +#Install BCMath package: +ARG INSTALL_BCMATH=false +RUN if [ ${INSTALL_BCMATH} = true ]; then \ + docker-php-ext-install bcmath \ +;fi + # Install PostgreSQL drivers: ARG INSTALL_PGSQL=false RUN if [ ${INSTALL_PGSQL} = true ]; then \ From 679d2b0aba3ceca5549a7520eaf375c0e2ab22ab Mon Sep 17 00:00:00 2001 From: Yusuf Kandemir <6266078+yusufkandemir@users.noreply.github.com> Date: Fri, 20 Jul 2018 10:45:12 +0300 Subject: [PATCH 03/10] Link fixes and changes in Documentation (#1539) * Fix guide links * Changed absolute link to relative --- DOCUMENTATION/content/documentation/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/DOCUMENTATION/content/documentation/index.md b/DOCUMENTATION/content/documentation/index.md index 2097237e..4135df41 100644 --- a/DOCUMENTATION/content/documentation/index.md +++ b/DOCUMENTATION/content/documentation/index.md @@ -323,7 +323,7 @@ PHP_FPM_INSTALL_PHPDBG=true ## Setup remote debugging for PhpStorm on Linux - - Make sure you have followed the steps above in the [Install Xdebug section](http://laradock.io/documentation/#install-xdebug). + - Make sure you have followed the steps above in the [Install Xdebug section](#install-xdebug). - Make sure Xdebug accepts connections and listens on port 9000. (Should be default configuration). @@ -407,7 +407,7 @@ To learn more about how Docker publishes ports, please read [this excellent post ## Setup Laravel and Docker on Digital Ocean -### [Full Guide Here](https://github.com/laradock/laradock/blob/master/_guides/digital_ocean.md) +### [Full Guide Here](/guides/#Digital-Ocean) @@ -1496,7 +1496,7 @@ e) set it to `true` ## PHPStorm Debugging Guide Remote debug Laravel web and phpunit tests. -[**Debugging Guide Here**](https://github.com/laradock/laradock/blob/master/_guides/phpstorm.md) +[**Debugging Guide Here**](/guides/#PHPStorm-Debugging) From b2ab970d04e4c4c958ff25fd1ea09af91c39df37 Mon Sep 17 00:00:00 2001 From: brunen9 Date: Fri, 20 Jul 2018 13:48:09 +0600 Subject: [PATCH 04/10] Upgrade PostgreSQL client to version 10. (#1508) --- workspace/Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 4f1e4645..0c885807 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -766,7 +766,11 @@ ARG INSTALL_PG_CLIENT=false RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \ # Install the pgsql client - apt-get -y install postgresql-client \ + apt-get install wget \ + && add-apt-repository "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" \ + && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \ + && apt-get update \ + && apt-get -y install postgresql-client-10 \ ;fi ########################################################################### From 1acbebc2a3fd90859953799a95e98cd9efea3ea3 Mon Sep 17 00:00:00 2001 From: Alex Mayer Date: Sat, 28 Jul 2018 03:08:01 -0400 Subject: [PATCH 05/10] Update MSSQL Drivers To Newest Version (#1707) Remove version lock from pecl install Update to Debian 9 repos since our image is Debian 9 Remove duplicate locales-gen line Closes #1622 --- php-fpm/Dockerfile | 8 +++++--- workspace/Dockerfile | 19 ++++--------------- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 8a76ab75..5dc801ff 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -416,14 +416,16 @@ RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \ # Add Microsoft repo for Microsoft ODBC Driver 13 for Linux apt-get install -y apt-transport-https gnupg \ && curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \ - && curl https://packages.microsoft.com/config/debian/8/prod.list > /etc/apt/sources.list.d/mssql-release.list \ + && curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list \ && apt-get update -yqq \ # Install Dependencies - && ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql locales \ + && ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql17 locales \ && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ + # link local aliases + && ln -s /etc/locale.alias /usr/share/locale/locale.alias \ && locale-gen \ # Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version. - && pecl install pdo_sqlsrv-4.1.8preview sqlsrv-4.1.8preview \ + && pecl install pdo_sqlsrv sqlsrv \ && docker-php-ext-enable pdo_sqlsrv sqlsrv \ && php -m | grep -q 'pdo_sqlsrv' \ && php -m | grep -q 'sqlsrv' \ diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 0c885807..1921bac5 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -641,23 +641,12 @@ RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \ curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \ curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list && \ apt-get update -yqq && \ - ACCEPT_EULA=Y apt-get install -yqq msodbcsql=13.0.1.0-1 mssql-tools=14.0.2.0-1 && \ - apt-get install -yqq unixodbc-dev-utf16 && \ - ln -sfn /opt/mssql-tools/bin/sqlcmd-13.0.1.0 /usr/bin/sqlcmd && \ - ln -sfn /opt/mssql-tools/bin/bcp-13.0.1.0 /usr/bin/bcp && \ - ACCEPT_EULA=Y apt-get install -yqq \ - unixodbc \ - unixodbc-dev \ - libgss3 \ - odbcinst \ - msodbcsql \ - locales && \ - echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ - locale-gen && \ - pecl install sqlsrv-4.3.0 pdo_sqlsrv-4.3.0 && \ - apt-get install -y locales && \ + ACCEPT_EULA=Y apt-get install -y msodbcsql17 mssql-tools unixodbc unixodbc-dev libgss3 odbcinst locales && \ + ln -sfn /opt/mssql-tools/bin/sqlcmd /usr/bin/sqlcmd && \ + ln -sfn /opt/mssql-tools/bin/bcp /usr/bin/bcp && \ echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ locale-gen && \ + pecl install sqlsrv pdo_sqlsrv && \ echo "extension=sqlsrv.so" > /etc/php/${PHP_VERSION}/cli/conf.d/20-sqlsrv.ini && \ echo "extension=pdo_sqlsrv.so" > /etc/php/${PHP_VERSION}/cli/conf.d/20-pdo_sqlsrv.ini \ && php -m | grep -q 'sqlsrv' \ From e92f08e323dfa2fd488ab92ef38c5f224fb930e8 Mon Sep 17 00:00:00 2001 From: JapSeyz Date: Sat, 28 Jul 2018 09:11:24 +0200 Subject: [PATCH 06/10] -u no longer supported (#1733) * -u no longer supported https://varnish-cache.org/docs/4.1/reference/varnishd.html https://support.jpgottech.com/knowledgebase.php?article=90 issue #1732 --- varnish/default.vcl | 6 +++--- varnish/start.sh | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/varnish/default.vcl b/varnish/default.vcl index 155a863a..73099c39 100644 --- a/varnish/default.vcl +++ b/varnish/default.vcl @@ -266,7 +266,7 @@ sub vcl_hit { return (deliver); } else { # No candidate for grace. Fetch a fresh object. - return(fetch); + return(miss); } } else { # backend is sick - use full grace @@ -275,12 +275,12 @@ sub vcl_hit { return (deliver); } else { # no graced object. - return (fetch); + return (miss); } } # fetch & deliver once we get the result - return (fetch); # Dead code, keep as a safeguard + return (miss); # Dead code, keep as a safeguard } sub vcl_miss { diff --git a/varnish/start.sh b/varnish/start.sh index e14511a9..7e7c28a5 100644 --- a/varnish/start.sh +++ b/varnish/start.sh @@ -11,7 +11,7 @@ exec bash -c \ "exec varnishd \ -a :$VARNISH_PORT \ -T localhost:6082 \ - -F -u varnish \ + -F \ -f $VARNISH_CONFIG \ -s malloc,$CACHE_SIZE \ - $VARNISHD_PARAMS" \ No newline at end of file + $VARNISHD_PARAMS" From 764e4845997335d8e7dfffdc370dbc9c15c6e61c Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Sun, 29 Jul 2018 12:00:13 +0800 Subject: [PATCH 07/10] Env variable conflict (#1734) * php-fpm and workspace arg var rename: PHP_VERSION to LARADOCK_PHP_VERSION. * travis-ci skip phpbdg --- docker-compose.yml | 4 +-- php-fpm/Dockerfile | 13 ++++---- travis-build.sh | 1 + workspace/Dockerfile | 74 +++++++++++++++++++------------------------- 4 files changed, 40 insertions(+), 52 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index d9b21128..f865989a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -47,7 +47,7 @@ services: build: context: ./workspace args: - - PHP_VERSION=${PHP_VERSION} + - LARADOCK_PHP_VERSION=${PHP_VERSION} - INSTALL_SUBVERSION=${WORKSPACE_INSTALL_SUBVERSION} - INSTALL_XDEBUG=${WORKSPACE_INSTALL_XDEBUG} - INSTALL_PHPDBG=${WORKSPACE_INSTALL_PHPDBG} @@ -115,7 +115,7 @@ services: build: context: ./php-fpm args: - - PHP_VERSION=${PHP_VERSION} + - LARADOCK_PHP_VERSION=${PHP_VERSION} - INSTALL_XDEBUG=${PHP_FPM_INSTALL_XDEBUG} - INSTALL_PHPDBG=${PHP_FPM_INSTALL_PHPDBG} - INSTALL_BLACKFIRE=${INSTALL_BLACKFIRE} diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 5dc801ff..45b91d2f 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -12,12 +12,14 @@ # Note: Base Image name format {image-tag}-{php-version} # -ARG PHP_VERSION=${PHP_VERSION} +ARG LARADOCK_PHP_VERSION -FROM laradock/php-fpm:2.2-${PHP_VERSION} +FROM laradock/php-fpm:2.2-${LARADOCK_PHP_VERSION} LABEL maintainer="Mahmoud Zalt " +ARG LARADOCK_PHP_VERSION + # Set Environment Variables ENV DEBIAN_FRONTEND noninteractive @@ -114,11 +116,10 @@ RUN sed -i "s/xdebug.remote_autostart=0/xdebug.remote_autostart=1/" /usr/local/e ########################################################################### ARG INSTALL_PHPDBG=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_PHPDBG} = true ]; then \ # Load the xdebug extension only with phpunit commands - apt-get install -y --force-yes php${PHP_VERSION}-phpdbg \ + apt-get install -y --force-yes php${LARADOCK_PHP_VERSION}-phpdbg \ ;fi ########################################################################### @@ -488,9 +489,7 @@ RUN if [ ${INSTALL_CALENDAR} = true ]; then \ # Check PHP version: ########################################################################### -ARG PHP_VERSION=${PHP_VERSION} - -RUN php -v | head -n 1 | grep -q "PHP ${PHP_VERSION}." +RUN php -v | head -n 1 | grep -q "PHP ${LARADOCK_PHP_VERSION}." # #-------------------------------------------------------------------------- diff --git a/travis-build.sh b/travis-build.sh index c72f51df..d6aec972 100755 --- a/travis-build.sh +++ b/travis-build.sh @@ -14,6 +14,7 @@ if [ -n "${PHP_VERSION}" ]; then cp env-example .env sed -i -- "s/PHP_VERSION=.*/PHP_VERSION=${PHP_VERSION}/g" .env sed -i -- 's/=false/=true/g' .env + sed -i -- 's/PHPDBG=true/PHPDBG=false/g' .env cat .env docker-compose build ${BUILD_SERVICE} docker images diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 1921bac5..60c6cdb1 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -12,12 +12,14 @@ # Note: Base Image name format {image-tag}-{php-version} # -ARG PHP_VERSION=${PHP_VERSION} +ARG LARADOCK_PHP_VERSION -FROM laradock/workspace:2.2-${PHP_VERSION} +FROM laradock/workspace:2.2-${LARADOCK_PHP_VERSION} LABEL maintainer="Mahmoud Zalt " +ARG LARADOCK_PHP_VERSION + # Set Environment Variables ENV DEBIAN_FRONTEND noninteractive @@ -179,11 +181,10 @@ RUN if [ ${INSTALL_DRUSH} = true ]; then \ USER root ARG INSTALL_SOAP=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_SOAP} = true ]; then \ # Install the PHP SOAP extension - apt-get -y install libxml2-dev php${PHP_VERSION}-soap \ + apt-get -y install libxml2-dev php${LARADOCK_PHP_VERSION}-soap \ ;fi ########################################################################### @@ -191,11 +192,10 @@ RUN if [ ${INSTALL_SOAP} = true ]; then \ ########################################################################### ARG INSTALL_LDAP=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_LDAP} = true ]; then \ apt-get install -y libldap2-dev && \ - apt-get install -y php${PHP_VERSION}-ldap \ + apt-get install -y php${LARADOCK_PHP_VERSION}-ldap \ ;fi ########################################################################### @@ -203,10 +203,9 @@ RUN if [ ${INSTALL_LDAP} = true ]; then \ ########################################################################### ARG INSTALL_IMAP=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_IMAP} = true ]; then \ - apt-get install -y php${PHP_VERSION}-imap \ + apt-get install -y php${LARADOCK_PHP_VERSION}-imap \ ;fi ########################################################################### @@ -229,21 +228,20 @@ RUN if [ ${INSTALL_SUBVERSION} = true ]; then \ USER root ARG INSTALL_XDEBUG=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_XDEBUG} = true ]; then \ # Load the xdebug extension only with phpunit commands - apt-get install -y php${PHP_VERSION}-xdebug && \ - sed -i 's/^;//g' /etc/php/${PHP_VERSION}/cli/conf.d/20-xdebug.ini && \ + apt-get install -y php${LARADOCK_PHP_VERSION}-xdebug && \ + sed -i 's/^;//g' /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-xdebug.ini && \ echo "alias phpunit='php -dzend_extension=xdebug.so /var/www/vendor/bin/phpunit'" >> ~/.bashrc \ ;fi # ADD for REMOTE debugging -COPY ./xdebug.ini /etc/php/${PHP_VERSION}/cli/conf.d/xdebug.ini +COPY ./xdebug.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini -RUN sed -i "s/xdebug.remote_autostart=0/xdebug.remote_autostart=1/" /etc/php/${PHP_VERSION}/cli/conf.d/xdebug.ini && \ - sed -i "s/xdebug.remote_enable=0/xdebug.remote_enable=1/" /etc/php/${PHP_VERSION}/cli/conf.d/xdebug.ini && \ - sed -i "s/xdebug.cli_color=0/xdebug.cli_color=1/" /etc/php/${PHP_VERSION}/cli/conf.d/xdebug.ini +RUN sed -i "s/xdebug.remote_autostart=0/xdebug.remote_autostart=1/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ + sed -i "s/xdebug.remote_enable=0/xdebug.remote_enable=1/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini && \ + sed -i "s/xdebug.cli_color=0/xdebug.cli_color=1/" /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/xdebug.ini ########################################################################### # Phpdbg: @@ -252,11 +250,10 @@ RUN sed -i "s/xdebug.remote_autostart=0/xdebug.remote_autostart=1/" /etc/php/${P USER root ARG INSTALL_PHPDBG=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_PHPDBG} = true ]; then \ # Load the xdebug extension only with phpunit commands - apt-get install -y --force-yes php${PHP_VERSION}-phpdbg \ + apt-get install -y --force-yes php${LARADOCK_PHP_VERSION}-phpdbg \ ;fi ########################################################################### @@ -302,18 +299,17 @@ RUN if [ ${INSTALL_WORKSPACE_SSH} = true ]; then \ ########################################################################### ARG INSTALL_MONGO=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_MONGO} = true ]; then \ # Install the mongodb extension if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ pecl install mongo && \ - echo "extension=mongo.so" >> /etc/php/${PHP_VERSION}/mods-available/mongo.ini && \ - ln -s /etc/php/${PHP_VERSION}/mods-available/mongo.ini /etc/php/${PHP_VERSION}/cli/conf.d/30-mongo.ini \ + echo "extension=mongo.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini && \ + ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongo.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongo.ini \ ;fi && \ pecl install mongodb && \ - echo "extension=mongodb.so" >> /etc/php/${PHP_VERSION}/mods-available/mongodb.ini && \ - ln -s /etc/php/${PHP_VERSION}/mods-available/mongodb.ini /etc/php/${PHP_VERSION}/cli/conf.d/30-mongodb.ini \ + echo "extension=mongodb.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini && \ + ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/mongodb.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-mongodb.ini \ ;fi ########################################################################### @@ -321,13 +317,12 @@ RUN if [ ${INSTALL_MONGO} = true ]; then \ ########################################################################### ARG INSTALL_AMQP=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_AMQP} = true ]; then \ apt-get install librabbitmq-dev -y && \ pecl -q install amqp && \ - echo "extension=amqp.so" >> /etc/php/${PHP_VERSION}/mods-available/amqp.ini && \ - ln -s /etc/php/${PHP_VERSION}/mods-available/amqp.ini /etc/php/${PHP_VERSION}/cli/conf.d/30-amqp.ini \ + echo "extension=amqp.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/amqp.ini && \ + ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/amqp.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/30-amqp.ini \ ;fi ########################################################################### @@ -335,12 +330,11 @@ RUN if [ ${INSTALL_AMQP} = true ]; then \ ########################################################################### ARG INSTALL_PHPREDIS=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ # Install Php Redis extension printf "\n" | pecl -q install -o -f redis && \ - echo "extension=redis.so" >> /etc/php/${PHP_VERSION}/mods-available/redis.ini && \ + echo "extension=redis.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/redis.ini && \ phpenmod redis \ ;fi @@ -349,7 +343,6 @@ RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ ########################################################################### ARG INSTALL_SWOOLE=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_SWOOLE} = true ]; then \ # Install Php Swoole Extension @@ -362,8 +355,8 @@ RUN if [ ${INSTALL_SWOOLE} = true ]; then \ pecl install swoole; \ fi \ fi && \ - echo "extension=swoole.so" >> /etc/php/${PHP_VERSION}/mods-available/swoole.ini && \ - ln -s /etc/php/${PHP_VERSION}/mods-available/swoole.ini /etc/php/${PHP_VERSION}/cli/conf.d/20-swoole.ini \ + echo "extension=swoole.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/swoole.ini && \ + ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/swoole.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-swoole.ini \ ;fi ########################################################################### @@ -491,7 +484,6 @@ RUN if [ ${INSTALL_YARN} = true ]; then \ USER root ARG INSTALL_AEROSPIKE=false -ARG PHP_VERSION=${PHP_VERSION} ARG AEROSPIKE_PHP_REPOSITORY RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \ @@ -508,9 +500,9 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \ && make install \ ) \ && rm /tmp/aerospike-client-php.tar.gz \ - && echo 'extension=aerospike.so' >> /etc/php/${PHP_VERSION}/cli/conf.d/aerospike.ini \ - && echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/${PHP_VERSION}/cli/conf.d/aerospike.ini \ - && echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/${PHP_VERSION}/cli/conf.d/aerospike.ini \ + && echo 'extension=aerospike.so' >> /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/aerospike.ini \ + && echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/aerospike.ini \ + && echo 'aerospike.udf.lua_user_path=/usr/local/aerospike/usr-lua' >> /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/aerospike.ini \ ;fi ########################################################################### @@ -520,15 +512,14 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \ USER root ARG INSTALL_V8JS=false -ARG PHP_VERSION=${PHP_VERSION} RUN if [ ${INSTALL_V8JS} = true ]; then \ # Install the php V8JS extension add-apt-repository -y ppa:pinepain/libv8-archived \ && apt-get update -yqq \ - && apt-get install -y php${PHP_VERSION}-xml php${PHP_VERSION}-dev php-pear libv8-5.4 \ + && apt-get install -y php${LARADOCK_PHP_VERSION}-xml php${LARADOCK_PHP_VERSION}-dev php-pear libv8-5.4 \ && pecl install v8js \ - && echo "extension=v8js.so" >> /etc/php/${PHP_VERSION}/cli/php.ini \ + && echo "extension=v8js.so" >> /etc/php/${LARADOCK_PHP_VERSION}/cli/php.ini \ ;fi ########################################################################### @@ -626,7 +617,6 @@ RUN if [ ${INSTALL_LINUXBREW} = true ]; then \ ########################################################################### ARG INSTALL_MSSQL=false -ARG PHP_VERSION=${PHP_VERSION} RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ @@ -647,8 +637,8 @@ RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \ echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ locale-gen && \ pecl install sqlsrv pdo_sqlsrv && \ - echo "extension=sqlsrv.so" > /etc/php/${PHP_VERSION}/cli/conf.d/20-sqlsrv.ini && \ - echo "extension=pdo_sqlsrv.so" > /etc/php/${PHP_VERSION}/cli/conf.d/20-pdo_sqlsrv.ini \ + echo "extension=sqlsrv.so" > /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-sqlsrv.ini && \ + echo "extension=pdo_sqlsrv.so" > /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/20-pdo_sqlsrv.ini \ && php -m | grep -q 'sqlsrv' \ && php -m | grep -q 'pdo_sqlsrv' \ ;fi \ @@ -801,9 +791,7 @@ RUN if [ ${INSTALL_DUSK_DEPS} = true ]; then \ # Check PHP version: ########################################################################### -ARG PHP_VERSION=${PHP_VERSION} - -RUN php -v | head -n 1 | grep -q "PHP ${PHP_VERSION}." +RUN php -v | head -n 1 | grep -q "PHP ${LARADOCK_PHP_VERSION}." # #-------------------------------------------------------------------------- From 303dadf33dcfa9e1e07405c60dfc6e05d402117c Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Sun, 29 Jul 2018 12:42:13 +0800 Subject: [PATCH 08/10] fix ln: failed to create symbolic link: file exists. (#1735) #1707 --- php-fpm/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 45b91d2f..2fb86df8 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -423,7 +423,7 @@ RUN set -eux; if [ ${INSTALL_MSSQL} = true ]; then \ && ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql17 locales \ && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ # link local aliases - && ln -s /etc/locale.alias /usr/share/locale/locale.alias \ + && ln -sfn /etc/locale.alias /usr/share/locale/locale.alias \ && locale-gen \ # Install pdo_sqlsrv and sqlsrv from PECL. Replace pdo_sqlsrv-4.1.8preview with preferred version. && pecl install pdo_sqlsrv sqlsrv \ From 8180804ae0b0c731415174d6a8e9261f07b33161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=8Dgor=20Jaca=C3=BAna?= Date: Sun, 29 Jul 2018 01:07:15 -0400 Subject: [PATCH 09/10] Add Metabase for analytics and Business Intelligence (#1711) * Include metabase service * Removing unecessary environment variables * Update documentation --- DOCUMENTATION/content/documentation/index.md | 13 +++++++++++++ docker-compose.yml | 13 +++++++++++++ env-example | 5 +++++ 3 files changed, 31 insertions(+) diff --git a/DOCUMENTATION/content/documentation/index.md b/DOCUMENTATION/content/documentation/index.md index 4135df41..73e5990b 100644 --- a/DOCUMENTATION/content/documentation/index.md +++ b/DOCUMENTATION/content/documentation/index.md @@ -555,6 +555,19 @@ docker-compose up -d netdata 2 - Open your browser and visit the localhost on port **19999**: `http://localhost:19999` +
+ +## Use Metabase + +1 - Run the Metabase Container (`metbase`) with the `docker-compose up` command. Example: + +```bash +docker-compose up -d metabase +``` + +2 - Open your browser and visit the localhost on port **3030**: `http://localhost:3030` + +3 - You can use environment to configure Metabase container. See docs in: [Running Metabase on Docker](https://www.metabase.com/docs/v0.12.0/operations-guide/running-metabase-on-docker.html) diff --git a/docker-compose.yml b/docker-compose.yml index f865989a..e1a6f18c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -876,3 +876,16 @@ services: - backend depends_on: - mongo + +### Metabase ################################################# + metabase: + image: metabase/metabase:latest + environment: + - MB_DB_FILE=/metabase-data/${METABASE_DB_FILE} + ports: + - ${METABASE_PORT}:3000 + volumes: + - ${DATA_PATH_HOST}/metabase-data:/metabase-data + networks: + - backend + diff --git a/env-example b/env-example index b928a8e0..513425c6 100644 --- a/env-example +++ b/env-example @@ -402,3 +402,8 @@ MONGO_WEBUI_PORT=3000 MONGO_WEBUI_ROOT_URL=http://localhost MONGO_WEBUI_MONGO_URL=mongodb://mongo:27017/ MONGO_WEBUI_INSTALL_MONGO=false + +### METABASE ############################################### +METABASE_PORT=3030 +METABASE_DB_FILE=metabase.db +METABASE_JAVA_TIMEZONE=US/Pacific \ No newline at end of file From 1b865dd153818643b2bbab685dd7a2155e2ae9fc Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Tue, 31 Jul 2018 22:38:02 +0800 Subject: [PATCH 10/10] fix php5.6 workspace aerospike travis-ci build failed. (#1738) --- env-example | 4 +++- travis-build.sh | 4 ++++ workspace/Dockerfile | 22 ++++++++++++++++------ 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/env-example b/env-example index 513425c6..15f55b8d 100644 --- a/env-example +++ b/env-example @@ -336,6 +336,8 @@ AEROSPIKE_INFO_PORT=3003 # for all versions "https://github.com/aerospike/aerospike-client-php/archive/master.tar.gz" # for php 7.2 (using this branch until the support for 7.2 on master) "https://github.com/aerospike/aerospike-client-php/archive/7.2.0-release-candidate.tar.gz" AEROSPIKE_PHP_REPOSITORY=https://github.com/aerospike/aerospike-client-php/archive/7.2.0-release-candidate.tar.gz +# for php 5.6 +# AEROSPIKE_PHP_REPOSITORY=https://github.com/aerospike/aerospike-client-php5/archive/3.4.15.tar.gz ### RETHINKDB ############################################# @@ -406,4 +408,4 @@ MONGO_WEBUI_INSTALL_MONGO=false ### METABASE ############################################### METABASE_PORT=3030 METABASE_DB_FILE=metabase.db -METABASE_JAVA_TIMEZONE=US/Pacific \ No newline at end of file +METABASE_JAVA_TIMEZONE=US/Pacific diff --git a/travis-build.sh b/travis-build.sh index d6aec972..eeee67ba 100755 --- a/travis-build.sh +++ b/travis-build.sh @@ -15,6 +15,10 @@ if [ -n "${PHP_VERSION}" ]; then sed -i -- "s/PHP_VERSION=.*/PHP_VERSION=${PHP_VERSION}/g" .env sed -i -- 's/=false/=true/g' .env sed -i -- 's/PHPDBG=true/PHPDBG=false/g' .env + if [ "${PHP_VERSION}" == "5.6" ]; then + sed -i -- 's/^AEROSPIKE_PHP_REPOSITORY=/##AEROSPIKE_PHP_REPOSITORY=/g' .env + sed -i -- 's/^# AEROSPIKE_PHP_REPOSITORY=/AEROSPIKE_PHP_REPOSITORY=/g' .env + fi cat .env docker-compose build ${BUILD_SERVICE} docker images diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 60c6cdb1..2a639f11 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -493,12 +493,22 @@ RUN if [ ${INSTALL_AEROSPIKE} = true ]; then \ curl -L -o /tmp/aerospike-client-php.tar.gz ${AEROSPIKE_PHP_REPOSITORY} \ && mkdir -p aerospike-client-php \ && tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \ - && ( \ - cd aerospike-client-php/src \ - && phpize \ - && ./build.sh \ - && make install \ - ) \ + && \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ + ( \ + cd aerospike-client-php/src/aerospike \ + && phpize \ + && ./build.sh \ + && make install \ + ) \ + else \ + ( \ + cd aerospike-client-php/src \ + && phpize \ + && ./build.sh \ + && make install \ + ) \ + fi \ && rm /tmp/aerospike-client-php.tar.gz \ && echo 'extension=aerospike.so' >> /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/aerospike.ini \ && echo 'aerospike.udf.lua_system_path=/usr/local/aerospike/lua' >> /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/aerospike.ini \