This image is no more maintained. Please update to vincowl/grav-php-nginx-v2
This aproach for a lightweight Content Management System stack includes four main parts:
The idea behind this solution is to have a very light and small footprint CMS that can run efficiently in a flexible environment.
Its very important to note this container expose 3 volumes and 2 ports. You should properly map the ports when you run the container.
Run the container:
docker run -d -i -p 80:80 -p 2222:22 ahumaro/grav-php-nginx
The previous command run the container. If the container it not already in your system, it downloads the image from the Docker Hub.
Two ports are mapped. In the example above, we are mapping port 80 in the host to the port 80 in the container. Also port 2222 in the host to port 22 in the container (This port can be used to access the container via SSH).
Test Grav site
Just point your browser to http://your_server/ and you are done.
You can inspect your new running container to find out the location of the 3 volumes the container is exposing:
Volume /usr/share/nginx/html/
Here you can find the Grav home folder where you can add and manage your content.
Volume /etc/nginx/
(Optional) Here you can tweak Nginx configuration and sites
Volume /root/.ssh/
(Optional) Here you can put your public key so you can access container via SSH. After that, open a SSH connection to root@your_server:2222 specifying your private key.
Grav is a very fast and simple solution for a CMS. It use flat files to store content. Installation is very simple and is much more easy and light than other CMS's like Drupal or Joomla. Also is worth to mention that is a very well documented piece of software.
Nginx is a webserver very light and efficient that is strong focused in a small memory footprint and high concurrency and performance. Also it can be configured as a reverse proxy to handle and solve many scenarios and, in conjunction with PHP-FPM, is the way to go to handle and enhance this CMS solution.
Pushion base Docker container is a minimal Ubuntu base image modified and minified to be a lightweight Docker compatible container. The container is enhanced with key features like the ability to handle SSH access to the container and the ability to add additional daemons that run at the startup time of the container.
In theory, the use of Docker and containers encourage the one process per container approach but, from the point of view of software as a service, this new container is focused in the one service per container philosophy.
The definition for this new Grav-PHP-Nginx container perfirm several tasks at build time:
This Docker container is ready and preconfigured. Just download and use it.
Content type
Image
Digest
Size
131.2 MB
Last updated
almost 5 years ago
docker pull vincowl/grav-php-nginx