Skip to content

time size comparison

rjsocha edited this page Jun 19, 2021 · 22 revisions

Comparison upstream build vs wyga

Comparison

chart

System Specs
Laptop i5-8265U CPU @ 1.60GHz, NVMe 240 GB, home office ~10Mibit/s link
Bare metal CPU E5-1650 v4 @ 3.60GHz, 32 GB RAM, SSD 512GB, 1Gbit/s link
Play With Docker https://labs.play-with-docker.com/
Digital 1 Digital Ocean's droplet, 1G RAM, 25 GB NVMe SSD, 1 shared cpu ($6 instnace)
Digital 2 Digital Ocean's droplet, 8G RAM, 50 GB SSD, 4 dedicated cpus ($80 instnace)

Time in seconds

version Laptop Bare metal Play With Docker Digital 2 Digital 2 Image size
php:8.0-fpm-buster 414 435 395 344 233 491 MB
wyga/php:8.0 211 115 43 96 80 245 MB

Upstream

docker system prune -f -a
time docker build -t upstream:8 -f df.upstream "https://github.com/rjsocha/wyga-php.git#master:examples"

Wyga

docker system prune -f -a
time docker build -t wyga:8 -f df.wyga "https://github.com/rjsocha/wyga-php.git#master:examples"

With cached (pre pulled) base images:

Time in seconds

version Laptop Bare metal Play With Docker Digital 2 Digital 2
wyga/php:8.0 43 30 24 20 15
docker system prune -f -a
curl -s https://raw.githubusercontent.com/rjsocha/wyga-php/master/examples/wyga-pull-all | bash -s -- 8.0
time docker build -t wyga:8 -f df.wyga "https://github.com/rjsocha/wyga-php.git#master:examples"

Dockerfiles

Dockerfile.upstream

FROM php:8.0-fpm-buster
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN chmod +x /usr/local/bin/install-php-extensions && sync && \
  install-php-extensions \
        gd \
        zip \
        pcntl \
        mysqli \
        mongodb \
        mcrypt \
        intl \
        gmp \
        gettext \
        bz2  \
        calendar  \
        bcmath \
        exif  \
        memcached \
        pdo_mysql \
        redis \
        uuid \
        xmlrpc \
        xsl \
        yaml \
        dba \
        imagick \
        sysvmsg \
        sysvsem \
        sysvshm \
        xdebug \
        sockets

Dockerfile.wyga

FROM wyga/php-ext-gd:8.0
FROM wyga/php-ext-zip:8.0
FROM wyga/php-ext-pcntl:8.0
FROM wyga/php-ext-mysqli:8.0
FROM wyga/php-ext-mongodb:8.0
FROM wyga/php-ext-mcrypt:8.0
FROM wyga/php-ext-intl:8.0
FROM wyga/php-ext-gmp:8.0
FROM wyga/php-ext-gettext:8.0
FROM wyga/php-ext-bz2:8.0
FROM wyga/php-ext-calendar:8.0
FROM wyga/php-ext-bcmath:8.0
FROM wyga/php-ext-exif:8.0
FROM wyga/php-ext-memcached:8.0
FROM wyga/php-ext-pdo_mysql:8.0
FROM wyga/php-ext-redis:8.0
FROM wyga/php-ext-uuid:8.0
FROM wyga/php-ext-xmlrpc:8.0
FROM wyga/php-ext-xsl:8.0
FROM wyga/php-ext-yaml:8.0
FROM wyga/php-ext-dba:8.0
FROM wyga/php-ext-imagick:8.0
FROM wyga/php-ext-sysvmsg:8.0
FROM wyga/php-ext-sysvsem:8.0
FROM wyga/php-ext-sysvshm:8.0
FROM wyga/php-ext-xdebug:8.0
FROM wyga/php-ext-sockets:8.0

FROM wyga/merge:27 as merge
FROM wyga/php-merge:8.0

Clone this wiki locally