2019-07-13 13:10:38 +00:00
|
|
|
FROM php:7.3-apache-buster
|
2018-06-09 11:52:13 +00:00
|
|
|
|
2019-04-15 17:12:07 +00:00
|
|
|
ARG COMPOSER_VERSION="1.8.5"
|
|
|
|
ARG COMPOSER_CHECKSUM="4e4c1cd74b54a26618699f3190e6f5fc63bb308b13fa660f71f2a2df047c0e17"
|
2018-06-09 11:52:13 +00:00
|
|
|
|
|
|
|
RUN apt-get update \
|
2019-04-24 14:11:50 +00:00
|
|
|
&& apt-get install -y --no-install-recommends apt-utils \
|
2018-11-11 17:03:35 +00:00
|
|
|
&& apt-get install -y --no-install-recommends git gosu \
|
2019-04-24 14:11:50 +00:00
|
|
|
optipng pngquant jpegoptim gifsicle libpq-dev libsqlite3-dev locales zip unzip libzip-dev libcurl4-openssl-dev \
|
2019-07-13 13:10:38 +00:00
|
|
|
libfreetype6 libicu-dev libjpeg62-turbo libpng16-16 libxpm4 libwebp6 libmagickwand-6.q16-6 \
|
2018-11-13 19:12:45 +00:00
|
|
|
libfreetype6-dev libjpeg62-turbo-dev libpng-dev libxpm-dev libwebp-dev libmagickwand-dev \
|
2019-04-15 03:08:16 +00:00
|
|
|
&& sed -i '/en_US/s/^#//g' /etc/locale.gen \
|
|
|
|
&& locale-gen && update-locale \
|
2018-06-16 20:27:45 +00:00
|
|
|
&& docker-php-source extract \
|
2018-06-16 10:23:13 +00:00
|
|
|
&& docker-php-ext-configure gd \
|
2019-07-13 13:10:38 +00:00
|
|
|
--enable-freetype \
|
2018-06-16 10:23:13 +00:00
|
|
|
--with-jpeg-dir=/usr/lib/x86_64-linux-gnu/ \
|
|
|
|
--with-xpm-dir=/usr/lib/x86_64-linux-gnu/ \
|
2018-11-13 19:12:45 +00:00
|
|
|
--with-webp-dir=/usr/lib/x86_64-linux-gnu/ \
|
2019-04-24 14:11:50 +00:00
|
|
|
&& docker-php-ext-install pdo_mysql pdo_pgsql pdo_sqlite pcntl gd exif bcmath intl zip curl \
|
2018-06-16 20:27:45 +00:00
|
|
|
&& pecl install imagick \
|
2019-04-24 14:11:50 +00:00
|
|
|
&& docker-php-ext-enable imagick pcntl imagick gd exif zip curl \
|
2019-01-08 15:40:49 +00:00
|
|
|
&& a2enmod rewrite remoteip \
|
|
|
|
&& {\
|
|
|
|
echo RemoteIPHeader X-Real-IP ;\
|
|
|
|
echo RemoteIPTrustedProxy 10.0.0.0/8 ;\
|
|
|
|
echo RemoteIPTrustedProxy 172.16.0.0/12 ;\
|
|
|
|
echo RemoteIPTrustedProxy 192.168.0.0/16 ;\
|
|
|
|
echo SetEnvIf X-Forwarded-Proto "https" HTTPS=on ;\
|
|
|
|
} > /etc/apache2/conf-available/remoteip.conf \
|
|
|
|
&& a2enconf remoteip \
|
2018-06-16 20:27:45 +00:00
|
|
|
&& curl -LsS https://getcomposer.org/download/${COMPOSER_VERSION}/composer.phar -o /usr/bin/composer \
|
|
|
|
&& echo "${COMPOSER_CHECKSUM} /usr/bin/composer" | sha256sum -c - \
|
|
|
|
&& chmod 755 /usr/bin/composer \
|
|
|
|
&& apt-get autoremove --purge -y \
|
|
|
|
libfreetype6-dev libjpeg62-turbo-dev libpng-dev libxpm-dev libvpx-dev libmagickwand-dev \
|
|
|
|
&& rm -rf /var/cache/apt \
|
|
|
|
&& docker-php-source delete
|
2018-06-09 11:52:13 +00:00
|
|
|
|
2018-06-16 07:50:38 +00:00
|
|
|
ENV PATH="~/.composer/vendor/bin:./vendor/bin:${PATH}"
|
|
|
|
|
2018-06-09 13:18:44 +00:00
|
|
|
COPY . /var/www/
|
2018-06-09 11:52:13 +00:00
|
|
|
|
2018-06-09 13:18:44 +00:00
|
|
|
WORKDIR /var/www/
|
2018-06-16 20:27:45 +00:00
|
|
|
RUN cp -r storage storage.skel \
|
2018-08-23 20:57:22 +00:00
|
|
|
&& cp contrib/docker/php.ini /usr/local/etc/php/conf.d/pixelfed.ini \
|
2019-04-16 05:50:56 +00:00
|
|
|
&& composer install --prefer-source --no-interaction \
|
2018-06-09 15:41:26 +00:00
|
|
|
&& rm -rf html && ln -s public html
|
2018-06-09 11:52:13 +00:00
|
|
|
|
2019-04-16 06:18:53 +00:00
|
|
|
VOLUME /var/www/storage /var/www/bootstrap
|
2018-06-09 11:52:13 +00:00
|
|
|
|
2018-06-17 08:20:21 +00:00
|
|
|
ENV APP_ENV=production \
|
|
|
|
APP_DEBUG=false \
|
|
|
|
LOG_CHANNEL=stderr \
|
|
|
|
DB_CONNECTION=mysql \
|
|
|
|
DB_PORT=3306 \
|
|
|
|
DB_HOST=db \
|
|
|
|
BROADCAST_DRIVER=log \
|
|
|
|
QUEUE_DRIVER=redis \
|
|
|
|
HORIZON_PREFIX=horizon-pixelfed \
|
|
|
|
REDIS_HOST=redis \
|
|
|
|
SESSION_SECURE_COOKIE=true \
|
|
|
|
API_BASE="/api/1/" \
|
|
|
|
API_SEARCH="/api/search" \
|
|
|
|
OPEN_REGISTRATION=true \
|
|
|
|
ENFORCE_EMAIL_VERIFICATION=true \
|
|
|
|
REMOTE_FOLLOW=false \
|
|
|
|
ACTIVITY_PUB=false
|
|
|
|
|
2018-08-23 20:57:22 +00:00
|
|
|
CMD /var/www/contrib/docker/start.sh
|