Skip to content

Commit 13da92f

Browse files
authored
Merge pull request #9 from bandsintown/8.1.12-fpm
Adding php v.8.1.12 fpm
2 parents c60043d + 6c65372 commit 13da92f

File tree

4 files changed

+154
-0
lines changed

4 files changed

+154
-0
lines changed
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
FROM bandsintown/alpine:3.15.0 as builder
2+
3+
FROM php:8.1.12-fpm-alpine
4+
5+
ENV S6_LOGGING=1 S6_OVERLAY_VERSION=1.19.1.1 GODNSMASQ_VERSION=1.0.7 CONSUL_TEMPLATE_VERSION=0.19.4 CONSUL_VERSION=0.8.4 MEMCACHED_DEPS="zlib-dev libmemcached-dev cyrus-sasl-dev" TZ="America/New_York"
6+
7+
COPY --from=builder /usr/local/bin/consul /usr/local/bin/consul
8+
COPY --from=builder /usr/local/bin/consul-template /usr/local/bin/consul-template
9+
COPY --from=builder /usr/sbin/go-dnsmasq /usr/sbin/go-dnsmasq
10+
COPY --from=builder /etc/cont-init.d /etc/cont-init.d
11+
COPY --from=builder /etc/services.d /etc/services.d
12+
COPY --from=builder /root /root
13+
14+
RUN apk update && apk upgrade \
15+
&& apk add --update \
16+
coreutils \
17+
freetype-dev \
18+
libjpeg-turbo-dev \
19+
libltdl \
20+
libpng-dev \
21+
curl wget bash tree jq bind-tools su-exec build-base gcc autoconf \
22+
libmemcached-libs zlib \
23+
&& set -xe \
24+
&& apk add --virtual .phpize-deps $PHPIZE_DEPS \
25+
&& apk add --virtual .memcached-deps $MEMCACHED_DEPS \
26+
&& pecl install memcached-3.1.4 \
27+
&& echo "extension=memcached.so" > /usr/local/etc/php/conf.d/20_memcached.ini \
28+
&& pecl install memcache \
29+
&& echo "extension=memcache.so" > /usr/local/etc/php/conf.d/21_memcache.ini \
30+
&& docker-php-ext-install mysqli \
31+
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
32+
&& docker-php-ext-install -j$(nproc) gd \
33+
&& rm -rf /usr/share/php8 \
34+
&& rm -rf /tmp/* \
35+
&& apk del .memcached-deps .phpize-deps
36+
37+
RUN curl -Ls https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-amd64.tar.gz | tar -xz -C /
38+
39+
RUN mkdir /var/composer && \
40+
cd /var/composer && \
41+
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
42+
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" && \
43+
php composer-setup.php --install-dir=/usr/bin --filename=composer && \
44+
php -r "unlink('composer-setup.php');"
45+
46+
COPY rootfs /
47+
48+
RUN echo $TZ > /etc/timezone \
49+
&& touch /usr/local/var/run/php-fpm.pid \
50+
&& echo -ne "- with $(php -v | head -n 1)\n" >> /root/.built
51+
52+
EXPOSE 9000
53+
54+
# Workaround https://bugs.php.net/bug.php?id=71880
55+
ENV LOG_STREAM="/tmp/stdout"
56+
RUN mkfifo $LOG_STREAM && chmod 777 $LOG_STREAM
57+
58+
ENTRYPOINT ["/init"]
59+
CMD ["/bin/sh", "-c", "php-fpm --pid /usr/local/var/run/php-fpm.pid | tail -f $LOG_STREAM"]
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
FROM bandsintown/php:8.1.12-fpm
2+
3+
ENV BATS_VERSION=0.4.0 DOCKERIZE_VERSION=v0.2.0
4+
5+
COPY tests /tests
6+
WORKDIR /tests
7+
8+
RUN exec 2>&1 && apk add --update bind-tools bc jq \
9+
&& curl -Ls https://codeload.github.com/sstephenson/bats/zip/v$BATS_VERSION -o /tmp/bats.zip \
10+
&& cd /tmp \
11+
&& unzip -q bats.zip \
12+
&& ./bats-${BATS_VERSION}/install.sh /usr/local \
13+
&& ln -sf /usr/local/libexec/bats /usr/local/bin/bats \
14+
&& wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
15+
&& tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
16+
&& rm -f bats.zip dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
17+
18+
CMD ["bash"]

versions/8.1.12-fpm/Dockerfile

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
FROM bandsintown/alpine:3.15.0 as builder
2+
3+
FROM php:8.1.12-fpm-alpine
4+
5+
ENV S6_LOGGING=1 S6_OVERLAY_VERSION=1.19.1.1 GODNSMASQ_VERSION=1.0.7 CONSUL_TEMPLATE_VERSION=0.19.4 CONSUL_VERSION=0.8.4 MEMCACHED_DEPS="zlib-dev libmemcached-dev cyrus-sasl-dev" TZ="America/New_York"
6+
7+
COPY --from=builder /usr/local/bin/consul /usr/local/bin/consul
8+
COPY --from=builder /usr/local/bin/consul-template /usr/local/bin/consul-template
9+
COPY --from=builder /usr/sbin/go-dnsmasq /usr/sbin/go-dnsmasq
10+
COPY --from=builder /etc/cont-init.d /etc/cont-init.d
11+
COPY --from=builder /etc/services.d /etc/services.d
12+
COPY --from=builder /root /root
13+
14+
RUN apk update && apk upgrade \
15+
&& apk add --update \
16+
coreutils \
17+
freetype-dev \
18+
libjpeg-turbo-dev \
19+
libltdl \
20+
libpng-dev \
21+
curl wget bash tree jq bind-tools su-exec build-base gcc autoconf \
22+
libmemcached-libs zlib \
23+
&& set -xe \
24+
&& apk add --virtual .phpize-deps $PHPIZE_DEPS \
25+
&& apk add --virtual .memcached-deps $MEMCACHED_DEPS \
26+
&& pecl install memcached-3.1.4 \
27+
&& echo "extension=memcached.so" > /usr/local/etc/php/conf.d/20_memcached.ini \
28+
&& pecl install memcache \
29+
&& echo "extension=memcache.so" > /usr/local/etc/php/conf.d/21_memcache.ini \
30+
&& docker-php-ext-install mysqli \
31+
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
32+
&& docker-php-ext-install -j$(nproc) gd \
33+
&& rm -rf /usr/share/php8 \
34+
&& rm -rf /tmp/* \
35+
&& apk del .memcached-deps .phpize-deps
36+
37+
RUN curl -Ls https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-amd64.tar.gz | tar -xz -C /
38+
39+
RUN mkdir /var/composer && \
40+
cd /var/composer && \
41+
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
42+
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" && \
43+
php composer-setup.php --install-dir=/usr/bin --filename=composer && \
44+
php -r "unlink('composer-setup.php');"
45+
46+
COPY rootfs /
47+
48+
RUN echo $TZ > /etc/timezone \
49+
&& touch /usr/local/var/run/php-fpm.pid \
50+
&& echo -ne "- with $(php -v | head -n 1)\n" >> /root/.built
51+
52+
EXPOSE 9000
53+
54+
# Workaround https://bugs.php.net/bug.php?id=71880
55+
ENV LOG_STREAM="/tmp/stdout"
56+
RUN mkfifo $LOG_STREAM && chmod 777 $LOG_STREAM
57+
58+
ENTRYPOINT ["/init"]
59+
CMD ["/bin/sh", "-c", "php-fpm --pid /usr/local/var/run/php-fpm.pid | tail -f $LOG_STREAM"]
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
FROM bandsintown/php:8.1.12-fpm
2+
3+
ENV BATS_VERSION=0.4.0 DOCKERIZE_VERSION=v0.2.0
4+
5+
COPY tests /tests
6+
WORKDIR /tests
7+
8+
RUN exec 2>&1 && apk add --update bind-tools bc jq \
9+
&& curl -Ls https://codeload.github.com/sstephenson/bats/zip/v$BATS_VERSION -o /tmp/bats.zip \
10+
&& cd /tmp \
11+
&& unzip -q bats.zip \
12+
&& ./bats-${BATS_VERSION}/install.sh /usr/local \
13+
&& ln -sf /usr/local/libexec/bats /usr/local/bin/bats \
14+
&& wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
15+
&& tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
16+
&& rm -f bats.zip dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz
17+
18+
CMD ["bash"]

0 commit comments

Comments
 (0)