mirror of
https://github.com/chevereto/docker.git
synced 2026-05-07 19:26:35 +02:00
👀 build passing --build-arg CHEVERETO_LICENSE=key
This commit is contained in:
47
chevereto.sh
Normal file
47
chevereto.sh
Normal file
@@ -0,0 +1,47 @@
|
||||
set -e
|
||||
DIR="/var/www"
|
||||
WORKING_DIR="$DIR/html"
|
||||
mkdir -p /chevereto && mkdir -p /chevereto/download && mkdir -p /chevereto/installer
|
||||
cd /chevereto/download
|
||||
curl -S -o installer.tar.gz -L "https://github.com/chevereto/installer/archive/${CHEVERETO_INSTALLER_TAG}.tar.gz"
|
||||
tar -xvzf installer.tar.gz
|
||||
mv -v installer-"${CHEVERETO_INSTALLER_TAG}"/* /chevereto/installer/
|
||||
cd /chevereto/installer
|
||||
php installer.php -a download -s $CHEVERETO_SOFTWARE -t=$CHEVERETO_TAG -l=$CHEVERETO_LICENSE
|
||||
php installer.php -a extract -s $CHEVERETO_SOFTWARE -f chevereto-pkg-*.zip -p $WORKING_DIR
|
||||
mkdir -p $WORKING_DIR/app
|
||||
set -eux
|
||||
{
|
||||
echo "<?php"
|
||||
echo "\$settings = ["
|
||||
echo " 'asset_storage_account_id' => getenv('CHEVERETO_ASSET_STORAGE_ACCOUNT_ID'),"
|
||||
echo " 'asset_storage_account_name' => getenv('CHEVERETO_ASSET_STORAGE_ACCOUNT_NAME'),"
|
||||
echo " 'asset_storage_bucket' => getenv('CHEVERETO_ASSET_STORAGE_BUCKET'),"
|
||||
echo " 'asset_storage_key' => getenv('CHEVERETO_ASSET_STORAGE_KEY'),"
|
||||
echo " 'asset_storage_name' => getenv('CHEVERETO_ASSET_STORAGE_NAME'),"
|
||||
echo " 'asset_storage_region' => getenv('CHEVERETO_ASSET_STORAGE_REGION'),"
|
||||
echo " 'asset_storage_secret' => getenv('CHEVERETO_ASSET_STORAGE_SECRET'),"
|
||||
echo " 'asset_storage_server' => getenv('CHEVERETO_ASSET_STORAGE_SERVER'),"
|
||||
echo " 'asset_storage_service' => getenv('CHEVERETO_ASSET_STORAGE_SERVICE'),"
|
||||
echo " 'asset_storage_type' => getenv('CHEVERETO_ASSET_STORAGE_TYPE'),"
|
||||
echo " 'asset_storage_url' => getenv('CHEVERETO_ASSET_STORAGE_URL'),"
|
||||
echo " 'db_driver' => getenv('CHEVERETO_DB_DRIVER'),"
|
||||
echo " 'db_host' => getenv('CHEVERETO_DB_HOST'),"
|
||||
echo " 'db_name' => getenv('CHEVERETO_DB_NAME'),"
|
||||
echo " 'db_pass' => getenv('CHEVERETO_DB_PASS'),"
|
||||
echo " 'db_pdo_attrs' => getenv('CHEVERETO_DB_PDO_ATTRS'),"
|
||||
echo " 'db_port' => (int) getenv('CHEVERETO_DB_PORT'),"
|
||||
echo " 'db_table_prefix' => getenv('CHEVERETO_DB_TABLE_PREFIX'),"
|
||||
echo " 'db_user' => getenv('CHEVERETO_DB_USER'),"
|
||||
echo " 'debug_level' => (int) getenv('CHEVERETO_DEBUG_LEVEL'),"
|
||||
echo " 'disable_php_pages' => (bool) getenv('CHEVERETO_DISABLE_PHP_PAGES'),"
|
||||
echo " 'hostname_path' => getenv('CHEVERETO_HOSTNAME_PATH'),"
|
||||
echo " 'hostname' => getenv('CHEVERETO_HOSTNAME'),"
|
||||
echo " 'https' => (bool) getenv('CHEVERETO_HTTPS'),"
|
||||
echo " 'image_formats_available' => explode(',', getenv('CHEVERETO_IMAGE_FORMATS_AVAILABLE')),"
|
||||
echo " 'session.save_handler' => getenv('CHEVERETO_SESSION_SAVE_HANDLER'),"
|
||||
echo " 'session.save_path' => getenv('CHEVERETO_SESSION_SAVE_PATH'),"
|
||||
echo "];"
|
||||
} >$WORKING_DIR/app/settings.php
|
||||
chown www-data: $WORKING_DIR -R
|
||||
cd $WORKING_DIR
|
||||
88
httpd-php.Dockerfile
Normal file
88
httpd-php.Dockerfile
Normal file
@@ -0,0 +1,88 @@
|
||||
FROM php:7.4-apache
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
libfreetype6-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libpng-dev \
|
||||
libwebp-dev \
|
||||
libgd-dev \
|
||||
libzip-dev \
|
||||
zip \
|
||||
imagemagick libmagickwand-dev --no-install-recommends \
|
||||
&& docker-php-ext-configure gd \
|
||||
--with-freetype=/usr/include/ \
|
||||
--with-jpeg=/usr/include/ \
|
||||
--with-webp=/usr/include/ \
|
||||
&& docker-php-ext-configure opcache --enable-opcache \
|
||||
&& docker-php-ext-install -j$(nproc) exif gd pdo_mysql zip opcache \
|
||||
&& pecl install imagick \
|
||||
&& docker-php-ext-enable imagick opcache \
|
||||
&& php -m \
|
||||
&& a2enmod rewrite
|
||||
|
||||
ARG CHEVERETO_SOFTWARE=chevereto
|
||||
ARG CHEVERETO_TAG=3.20.1
|
||||
ARG CHEVERETO_INSTALLER_TAG=2.2.2
|
||||
ARG CHEVERETO_SERVICING=docker
|
||||
ARG CHEVERETO_LICENSE
|
||||
|
||||
RUN test -n "$CHEVERETO_LICENSE"
|
||||
|
||||
ENV CHEVERETO_SOFTWARE=$CHEVERETO_SOFTWARE \
|
||||
CHEVERETO_TAG=$CHEVERETO_TAG \
|
||||
CHEVERETO_INSTALLER_TAG=$CHEVERETO_INSTALLER_TAG \
|
||||
CHEVERETO_SERVICING=$CHEVERETO_SERVICING \
|
||||
CHEVERETO_LICENSE=$CHEVERETO_LICENSE \
|
||||
CHEVERETO_DB_HOST=mariadb \
|
||||
CHEVERETO_DB_USER=chevereto \
|
||||
CHEVERETO_DB_PASS=user_database_password \
|
||||
CHEVERETO_DB_NAME=chevereto \
|
||||
CHEVERETO_DB_TABLE_PREFIX=chv_ \
|
||||
CHEVERETO_DB_PORT=3306 \
|
||||
CHEVERETO_DB_DRIVER=mysql \
|
||||
CHEVERETO_DB_PDO_ATTRS=[] \
|
||||
CHEVERETO_DEBUG_LEVEL=1 \
|
||||
CHEVERETO_ERROR_LOG= \
|
||||
CHEVERETO_IMAGE_FORMATS_AVAILABLE=JPG,PNG,BMP,GIF,WEBP \
|
||||
CHEVERETO_HOSTNAME=localhost \
|
||||
CHEVERETO_HOSTNAME_PATH=/ \
|
||||
CHEVERETO_SESSION_SAVE_HANDLER=files \
|
||||
CHEVERETO_SESSION_SAVE_PATH=/tmp \
|
||||
CHEVERETO_UPLOAD_MAX_FILESIZE=25M \
|
||||
CHEVERETO_POST_MAX_SIZE=25M \
|
||||
CHEVERETO_MAX_EXECUTION_TIME=30 \
|
||||
CHEVERETO_MEMORY_LIMIT=512M \
|
||||
CHEVERETO_ASSET_STORAGE_NAME=assets \
|
||||
CHEVERETO_ASSET_STORAGE_TYPE=local \
|
||||
CHEVERETO_ASSET_STORAGE_KEY= \
|
||||
CHEVERETO_ASSET_STORAGE_SECRET= \
|
||||
CHEVERETO_ASSET_STORAGE_BUCKET= \
|
||||
CHEVERETO_ASSET_STORAGE_URL= \
|
||||
CHEVERETO_ASSET_STORAGE_REGION= \
|
||||
CHEVERETO_ASSET_STORAGE_SERVER= \
|
||||
CHEVERETO_ASSET_STORAGE_SERVICE= \
|
||||
CHEVERETO_ASSET_STORAGE_ACCOUNT_ID= \
|
||||
CHEVERETO_ASSET_STORAGE_ACCOUNT_NAME=
|
||||
|
||||
RUN set -eux; \
|
||||
{ \
|
||||
echo "log_errors = On"; \
|
||||
echo "error_log = /dev/stderr"; \
|
||||
echo "upload_max_filesize = \${CHEVERETO_UPLOAD_MAX_FILESIZE}"; \
|
||||
echo "post_max_size = \${CHEVERETO_POST_MAX_SIZE}"; \
|
||||
echo "max_execution_time = \${CHEVERETO_MAX_EXECUTION_TIME}"; \
|
||||
echo "memory_limit = \${CHEVERETO_MEMORY_LIMIT}"; \
|
||||
} > $PHP_INI_DIR/conf.d/php.ini
|
||||
|
||||
RUN mkdir -p /var/www/html/importing && \
|
||||
mkdir -p /var/www/html/importing/no-parse && \
|
||||
mkdir -p /var/www/html/importing/parse-album && \
|
||||
mkdir -p /var/www/html/importing/parse-users
|
||||
|
||||
VOLUME /var/www/html/images
|
||||
VOLUME /var/www/html/importing/no-parse
|
||||
VOLUME /var/www/html/importing/parse-albums
|
||||
VOLUME /var/www/html/importing/parse-users
|
||||
|
||||
COPY chevereto.sh /chevereto.sh
|
||||
RUN chmod +x /chevereto.sh && /chevereto.sh
|
||||
Reference in New Issue
Block a user