docker/pixelfed/alpine/base/Dockerfile.arm64v8

104 lines
2.5 KiB
Docker

FROM lsiobase/alpine:arm64v8-3.11
# set version label
ARG BUILD_DATE
ARG VERSION
ARG PIXELFED_RELEASE
LABEL build_version="Build version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="asonix"
# environment settings
ENV PIXELFED_PATH="/srv/www/pixelfed"
RUN \
echo "**** install runtime packages ****" && \
apk add --no-cache --upgrade \
apache2-utils \
curl \
ffmpeg \
git \
imagemagick \
jpegoptim \
libressl3.0-libssl \
libxml2 \
nano \
openssl \
optipng \
php7 \
php7-bcmath \
php7-ctype \
php7-curl \
php7-dom \
php7-exif \
php7-fileinfo \
php7-fpm \
php7-gd \
php7-iconv \
php7-imagick \
php7-intl \
php7-json \
php7-mbstring \
php7-openssl \
php7-pcntl \
php7-pdo_pgsql \
php7-pgsql \
php7-phar \
php7-posix \
php7-session \
php7-simplexml \
php7-tokenizer \
php7-xml \
php7-xmlwriter \
php7-zip \
php7-zlib \
pngquant \
rsync \
sudo \
tar \
unzip && \
echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php7/php-fpm.conf
# install composer
RUN \
echo "**** install composer ****" && \
set -ex; \
SIGNATURE="$(curl https://composer.github.io/installer.sig)"; \
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"; \
SIG="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"; \
test "$SIGNATURE" = "$SIG"; \
php composer-setup.php --install-dir /usr/local/bin --filename=composer; \
echo "**** cleanup ****" && \
rm composer-setup.php
# install pixelfed
RUN \
echo "**** download pixelfed ****" && \
curl -o /app/pixelfed.tar.gz -L \
"https://github.com/pixelfed/pixelfed/archive/${PIXELFED_RELEASE}.tar.gz" && \
echo "**** install pixelfed ****" && \
mkdir -p "${PIXELFED_PATH}" && \
tar zxf /app/pixelfed.tar.gz -C "${PIXELFED_PATH}" --strip-components=1 && \
chown abc:abc -R "${PIXELFED_PATH}" && \
echo "**** cleanup ****" && \
rm /app/pixelfed.tar.gz
# prepare pixelfed
WORKDIR /srv/www/pixelfed
USER abc
RUN \
echo "**** prepare pixelfed ****" && \
composer install \
--no-ansi \
--no-interaction \
--optimize-autoloader \
--no-scripts \
--no-progress && \
cp -r storage storage-default
WORKDIR /
USER root
# copy local files
COPY root/ /
VOLUME /srv/www/pixelfed/storage