Merge branch 'master' into spelling

This commit is contained in:
Andy Miller 2020-01-22 12:41:44 -07:00 committed by GitHub
commit a50d043703
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 34 additions and 30 deletions

View File

@ -1,20 +1,25 @@
FROM php:7.2-apache
FROM php:7.3-apache
LABEL maintainer="Andy Miller <rhuk@getgrav.org> (@rhukster)"
# Enable Apache Rewrite + Expires Module
RUN a2enmod rewrite expires
# Install dependencies
RUN apt-get update && apt-get install -y \
RUN apt-get update && apt-get install -y --no-install-recommends \
unzip \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libyaml-dev \
libzip4 \
libzip-dev \
cron \
vim \
&& docker-php-ext-install opcache \
&& docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
&& docker-php-ext-install -j$(nproc) gd \
&& docker-php-ext-install zip
&& rm -rf /var/lib/apt/lists/*
# set recommended PHP.ini settings
# see https://secure.php.net/manual/en/opcache.installation.php
@ -33,7 +38,7 @@ RUN { \
# VOLUME /var/www/html
RUN pecl install apcu \
&& pecl install yaml \
&& pecl install yaml-2.0.4 \
&& docker-php-ext-enable apcu yaml
# Set user to www-data
@ -41,8 +46,8 @@ RUN chown www-data:www-data /var/www
USER www-data
# Define Grav version and expected SHA1 signature
ENV GRAV_VERSION 1.5.5
ENV GRAV_SHA1 af0433facdae1afeb1d973a66db2315c5022b10d
ENV GRAV_VERSION 1.6.19
ENV GRAV_SHA1 231e6789e9575adccd6044aa0d0c72b8c2603a96
# Install grav
WORKDIR /var/www
@ -52,11 +57,18 @@ RUN curl -o grav-admin.zip -SL https://getgrav.org/download/core/grav-admin/${GR
mv -T /var/www/grav-admin /var/www/html && \
rm grav-admin.zip
# Create cron job for Grav maintenance scripts
RUN (crontab -l; echo "* * * * * cd /var/www/html;/usr/local/bin/php bin/grav scheduler 1>> /dev/null 2>&1") | crontab -
# Return to root user
USER root
# Copy init scripts
# COPY docker-entrypoint.sh /entrypoint.sh
# provide container inside image for data persistance
VOLUME ["/var/www/html"]
# ENTRYPOINT ["/entrypoint.sh"]
# CMD ["apache2-foreground"]
CMD ["sh", "-c", "cron && apache2-foreground"]

View File

@ -2,13 +2,15 @@
This currently is pretty minimal and uses:
* apache-2.4.8
* apache-2.4.38
* GD library
* Unzip library
* php7.2
* php7.2-opcache
* php7.2-acpu
* php7.2-yaml
* php7.3
* php7.3-opcache
* php7.3-acpu
* php7.3-yaml
* cron
* vim editor
## Building the image from Dockerfile
@ -16,26 +18,16 @@ This currently is pretty minimal and uses:
docker build -t grav:latest .
```
## Running Grav Image with Latest Grav + Admin (not persistent):
## Running Grav Image with Latest Grav + Admin:
```
docker run -p 8000:80 grav:latest
```
Point browser to `http://localhost/8000` and create user account...
Point browser to `http://localhost:8000` and create user account...
## Running local Grav installation
This assumes you have already downloaded a Grav package into a local folder. This is the best way to run Grav if you want to have your changes persisted between restarts of the docker container.
## Running Grav Image with Latest Grav + Admin with a named volume (can be used in production)
```
docker run -v /local/grav/install:/var/www/html:cached -p 8000:80/tcp grav:latest
docker run -d -p 8000:80 --name grav --restart always -v grav_data:/var/www/html grav:1.0
```
To run in the current directory you can use:
```
docker run -v `pwd`:/var/www/html:cached -p 8000:80/tcp grav:latest
```
Point browser to `http://localhost/8000` to access your Grav site