...
 
Commits (2)
......@@ -49,7 +49,7 @@ class Retention implements AnalyticsMetric
$startTs = $timestamps[$x+1];
$signups = [];
$offset = "";
echo "\n Gathering signups \n";
error_log("Gathering signups");
while (true) {
$data = $this->db->getRow("analytics:signup:day:$startTs", ['limit'=>200, 'offset' => $offset]);
if (count($data) <= 1) {
......@@ -61,13 +61,13 @@ class Retention implements AnalyticsMetric
$offset = $k;
}
}
echo " (done)";
error_log("(done)");
//now get active users from each interval after this date
$endTs = $timestamps[$x-$x+1];
//echo "[$x]:: actives: " . date('d-m-Y', $endTs) . " signups: " . date('d-m-Y', $startTs) . "\n";
$offset = "";
echo "\n Gathering actives \n";
error_log("Gathering actives");
foreach ($signups as $signup => $ts) {
if ($this->wasActive($signup, $now)) {
$this->db->insert("{$this->namespace}:$x:$now", [$signup=>time()]);
......@@ -76,7 +76,7 @@ class Retention implements AnalyticsMetric
echo "\r $x: $signup (not active) $offset";
}
}
echo "(done)";
error_log("(done)");
}
return true;
......
FROM minds/php:latest
FROM minds/php:7.3
RUN docker-php-ext-enable opcache
......
FROM php:7.1-fpm-alpine3.4
FROM php:7.3-fpm-alpine3.10
# Required extensions
RUN apk update && apk add --no-cache --update \
coreutils \
libmcrypt-dev \
RUN apk add --no-cache --virtual build-deps \
libzip-dev \
zlib-dev \
freetype-dev \
libjpeg-turbo-dev \
libmcrypt-dev \
libpng-dev \
$PHPIZE_DEPS \
openssl-dev \
postgresql-dev \
imagemagick-dev \
&& apk add --no-cache \
libzip \
coreutils \
imagemagick \
nodejs \
ffmpeg \
&& docker-php-ext-install -j$(nproc) bcmath \
&& docker-php-ext-install -j$(nproc) zip \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j$(nproc) gd \
&& docker-php-ext-install -j$(nproc) exif \
&& docker-php-ext-install -j$(nproc) mbstring \
&& docker-php-ext-install -j$(nproc) pdo \
&& docker-php-ext-install -j$(nproc) pdo_pgsql
&& apk del build-deps
# Cassandra extension
# PECL Extensions
RUN apk add --no-cache --virtual build-deps \
$PHPIZE_DEPS \
imagemagick-dev \
&& pecl install mongodb \
&& pecl install redis \
&& pecl install apcu \
&& pecl install imagick \
&& docker-php-ext-enable mongodb \
&& docker-php-ext-enable redis \
&& docker-php-ext-enable apcu \
&& docker-php-ext-enable imagick \
&& apk del build-deps
# Cassandra extension
ENV MAKEFLAGS -j4
ENV INSTALL_DIR /usr/src/datastax-php-driver
ENV BUILD_DEPS \
bash \
cmake \
......@@ -39,56 +49,47 @@ ENV BUILD_DEPS \
git \
gmp-dev \
autoconf \
imagemagick-dev \
libtool
libtool \
openssl-dev \
zlib-dev \
$PHPIZE_DEPS
RUN apk update && apk add --no-cache --virtual .build-deps $BUILD_DEPS \
RUN apk add --no-cache --virtual build-deps $BUILD_DEPS \
&& apk add --no-cache libuv gmp \
&& git clone https://github.com/datastax/php-driver.git $INSTALL_DIR \
&& cd $INSTALL_DIR \
&& git submodule update --init \
&& cd ext && bash $INSTALL_DIR/ext/install.sh \
&& docker-php-ext-enable cassandra \
&& pecl install imagick \
&& docker-php-ext-enable imagick \
&& apk del .build-deps \
&& apk del build-deps \
&& rm -rf $INSTALL_DIR
# Mongo extension
RUN pecl install mongodb \
&& docker-php-ext-enable mongodb
# Redis extension
RUN pecl install redis \
&& docker-php-ext-enable redis
# APCu extension
RUN pecl install apcu \
&& docker-php-ext-enable apcu
# ZMQ extension
RUN apk add --no-cache zeromq-dev && \
pecl install zmq-beta \
&& docker-php-ext-enable zmq
# Install nodejs (needed for mw3)
RUN apk add --update --no-cache nodejs
# Install ffmpeg (needed for video transcodes)
RUN apk add --no-cache ffmpeg
ENV INSTALL_DIR /usr/src/php-zmq
RUN apk add --no-cache --virtual build-deps \
zeromq-dev \
git \
$PHPIZE_DEPS \
&& apk add --no-cache zeromq \
&& git clone https://github.com/zeromq/php-zmq.git $INSTALL_DIR \
&& cd $INSTALL_DIR \
&& phpize \
&& ./configure \
&& make -j$(nproc) \
&& make install \
&& docker-php-ext-enable zmq \
&& apk del build-deps \
&& rm -rf $INSTALL_DIR
# Install awscli
RUN apk update && apk add --no-cache py-pip && pip install --upgrade pip && pip install awscli
RUN apk add --no-cache \
python \
py-pip \
groff \
&& pip install awscli --upgrade \
&& apk del py-pip
# PHP INI
COPY php.ini /usr/local/etc/php/
COPY opcache.ini /usr/local/etc/php/conf.d/opcache-recommended.ini
WORKDIR /var/www/Minds