docker/pixelfed/Dockerfile.arm64v8
2020-02-14 19:07:56 -06:00

88 lines
2.1 KiB
Docker

FROM lsiobase/nginx: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 \
curl \
ffmpeg \
imagemagick \
jpegoptim \
libxml2 \
optipng \
php7-bcmath \
php7-ctype \
php7-curl \
php7-dom \
php7-exif \
php7-gd \
php7-iconv \
php7-imagick \
php7-intl \
php7-pcntl \
php7-pdo_pgsql \
php7-pgsql \
php7-phar \
php7-posix \
php7-tokenizer \
php7-zip \
pngquant \
rsync \
sudo \
tar \
unzip
# 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/ /
EXPOSE 80
VOLUME /srv/www/pixelfed/storage