Skip to content

Commit e4438f0

Browse files
committed
Add alpine fpm variants
1 parent b69836c commit e4438f0

File tree

5 files changed

+143
-6
lines changed

5 files changed

+143
-6
lines changed

.travis.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,25 @@ services: docker
44
env:
55
- VERSION=8.3-rc VARIANT=apache
66
- VERSION=8.3-rc VARIANT=fpm
7+
- VERSION=8.3-rc VARIANT=fpm/alpine
78
- VERSION=8.2 VARIANT=apache
89
- VERSION=8.2 VARIANT=fpm
10+
- VERSION=8.2 VARIANT=fpm/alpine
911
- VERSION=7 VARIANT=apache
1012
- VERSION=7 VARIANT=fpm
13+
- VERSION=7 VARIANT=fpm/alpine
1114

1215
install:
1316
- git clone https://github.com/docker-library/official-images.git ~/official-images
1417

1518
before_script:
1619
- env | sort
17-
- cd "$VERSION/$VARIANT"
18-
- image="drupal:$VERSION-$VARIANT"
20+
- cd "$VERSION"
21+
- image="drupal:${VERSION}${VARIANT:+-$VARIANT}"
22+
- image="${image//'/'/-}"
1923

2024
script:
21-
- docker build -t "$image" .
25+
- docker build -t "$image" "${VARIANT:-.}"
2226
- ~/official-images/test/run.sh "$image"
2327

2428
after_script:

7/fpm/alpine/Dockerfile

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# from https://www.drupal.org/requirements/php#drupalversions
2+
FROM php:7.0-fpm-alpine
3+
4+
# install the PHP extensions we need
5+
# postgresql-dev is needed for https://bugs.alpinelinux.org/issues/3642
6+
RUN apk add --no-cache \
7+
freetype \
8+
libpng \
9+
libjpeg-turbo \
10+
freetype-dev \
11+
libpng-dev \
12+
libjpeg-turbo-dev \
13+
postgresql-dev \
14+
&& docker-php-ext-configure gd \
15+
--with-freetype-dir=/usr/include/ \
16+
--with-png-dir=/usr/include/ \
17+
--with-jpeg-dir=/usr/include/ \
18+
&& NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1) \
19+
&& docker-php-ext-install -j${NPROC} gd mbstring opcache pdo pdo_mysql pdo_pgsql zip \
20+
&& apk del --no-cache freetype-dev libpng-dev libjpeg-turbo-dev
21+
22+
# set recommended PHP.ini settings
23+
# see https://secure.php.net/manual/en/opcache.installation.php
24+
RUN { \
25+
echo 'opcache.memory_consumption=128'; \
26+
echo 'opcache.interned_strings_buffer=8'; \
27+
echo 'opcache.max_accelerated_files=4000'; \
28+
echo 'opcache.revalidate_freq=60'; \
29+
echo 'opcache.fast_shutdown=1'; \
30+
echo 'opcache.enable_cli=1'; \
31+
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
32+
33+
WORKDIR /var/www/html
34+
35+
# https://www.drupal.org/node/3060/release
36+
ENV DRUPAL_VERSION 7.54
37+
ENV DRUPAL_MD5 3068cbe488075ae166e23ea6cd29cf0f
38+
39+
RUN curl -fSL "https://ftp.drupal.org/files/projects/drupal-${DRUPAL_VERSION}.tar.gz" -o drupal.tar.gz \
40+
&& echo "${DRUPAL_MD5} *drupal.tar.gz" | md5sum -c - \
41+
&& tar -xz --strip-components=1 -f drupal.tar.gz \
42+
&& rm drupal.tar.gz \
43+
&& chown -R www-data:www-data sites modules themes

8.2/fpm/alpine/Dockerfile

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# from https://www.drupal.org/requirements/php#drupalversions
2+
FROM php:7.0-fpm-alpine
3+
4+
# install the PHP extensions we need
5+
# postgresql-dev is needed for https://bugs.alpinelinux.org/issues/3642
6+
RUN apk add --no-cache \
7+
freetype \
8+
libpng \
9+
libjpeg-turbo \
10+
freetype-dev \
11+
libpng-dev \
12+
libjpeg-turbo-dev \
13+
postgresql-dev \
14+
&& docker-php-ext-configure gd \
15+
--with-freetype-dir=/usr/include/ \
16+
--with-png-dir=/usr/include/ \
17+
--with-jpeg-dir=/usr/include/ \
18+
&& NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1) \
19+
&& docker-php-ext-install -j${NPROC} gd mbstring opcache pdo pdo_mysql pdo_pgsql zip \
20+
&& apk del --no-cache freetype-dev libpng-dev libjpeg-turbo-dev
21+
22+
# set recommended PHP.ini settings
23+
# see https://secure.php.net/manual/en/opcache.installation.php
24+
RUN { \
25+
echo 'opcache.memory_consumption=128'; \
26+
echo 'opcache.interned_strings_buffer=8'; \
27+
echo 'opcache.max_accelerated_files=4000'; \
28+
echo 'opcache.revalidate_freq=60'; \
29+
echo 'opcache.fast_shutdown=1'; \
30+
echo 'opcache.enable_cli=1'; \
31+
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
32+
33+
WORKDIR /var/www/html
34+
35+
# https://www.drupal.org/node/3060/release
36+
ENV DRUPAL_VERSION 8.2.6
37+
ENV DRUPAL_MD5 57526a827771ea8a06db1792f1602a85
38+
39+
RUN curl -fSL "https://ftp.drupal.org/files/projects/drupal-${DRUPAL_VERSION}.tar.gz" -o drupal.tar.gz \
40+
&& echo "${DRUPAL_MD5} *drupal.tar.gz" | md5sum -c - \
41+
&& tar -xz --strip-components=1 -f drupal.tar.gz \
42+
&& rm drupal.tar.gz \
43+
&& chown -R www-data:www-data sites modules themes

8.3-rc/fpm/alpine/Dockerfile

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# from https://www.drupal.org/requirements/php#drupalversions
2+
FROM php:7.0-fpm-alpine
3+
4+
# install the PHP extensions we need
5+
# postgresql-dev is needed for https://bugs.alpinelinux.org/issues/3642
6+
RUN apk add --no-cache \
7+
freetype \
8+
libpng \
9+
libjpeg-turbo \
10+
freetype-dev \
11+
libpng-dev \
12+
libjpeg-turbo-dev \
13+
postgresql-dev \
14+
&& docker-php-ext-configure gd \
15+
--with-freetype-dir=/usr/include/ \
16+
--with-png-dir=/usr/include/ \
17+
--with-jpeg-dir=/usr/include/ \
18+
&& NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1) \
19+
&& docker-php-ext-install -j${NPROC} gd mbstring opcache pdo pdo_mysql pdo_pgsql zip \
20+
&& apk del --no-cache freetype-dev libpng-dev libjpeg-turbo-dev
21+
22+
# set recommended PHP.ini settings
23+
# see https://secure.php.net/manual/en/opcache.installation.php
24+
RUN { \
25+
echo 'opcache.memory_consumption=128'; \
26+
echo 'opcache.interned_strings_buffer=8'; \
27+
echo 'opcache.max_accelerated_files=4000'; \
28+
echo 'opcache.revalidate_freq=60'; \
29+
echo 'opcache.fast_shutdown=1'; \
30+
echo 'opcache.enable_cli=1'; \
31+
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
32+
33+
WORKDIR /var/www/html
34+
35+
# https://www.drupal.org/node/3060/release
36+
ENV DRUPAL_VERSION 8.3.0-alpha1
37+
ENV DRUPAL_MD5 601f931d5a3281214917e3eabfd86408
38+
39+
RUN curl -fSL "https://ftp.drupal.org/files/projects/drupal-${DRUPAL_VERSION}.tar.gz" -o drupal.tar.gz \
40+
&& echo "${DRUPAL_MD5} *drupal.tar.gz" | md5sum -c - \
41+
&& tar -xz --strip-components=1 -f drupal.tar.gz \
42+
&& rm drupal.tar.gz \
43+
&& chown -R www-data:www-data sites modules themes

update.sh

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,20 @@ for version in "${versions[@]}"; do
3030
exit 1
3131
fi
3232
md5="$(grep -A6 -m1 '>drupal-'"$fullVersion"'.tar.gz<' release | grep -A1 -m1 '"md5 hash"' | tail -1 | awk '{ print $1 }')"
33-
33+
3434
(
3535
set -x
3636
sed -ri '
3737
s/^(ENV DRUPAL_VERSION) .*/\1 '"$fullVersion"'/;
3838
s/^(ENV DRUPAL_MD5) .*/\1 '"$md5"'/;
3939
' "$version"/*/Dockerfile
40+
sed -ri '
41+
s/^(ENV DRUPAL_VERSION) .*/\1 '"$fullVersion"'/;
42+
s/^(ENV DRUPAL_MD5) .*/\1 '"$md5"'/;
43+
' "$version"/fpm/alpine/Dockerfile
4044
)
41-
42-
for variant in fpm apache; do
45+
46+
for variant in fpm/alpine fpm apache; do
4347
travisEnv='\n - VERSION='"$version"' VARIANT='"$variant$travisEnv"
4448
done
4549
done

0 commit comments

Comments
 (0)