Skip to content

Commit

Permalink
update prerequisites page (#2224)
Browse files Browse the repository at this point in the history
  • Loading branch information
joshdentremont authored May 3, 2023
1 parent d05ee3d commit 7b8d643
Showing 1 changed file with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions docs/installation/docker-prereq.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,57 @@
# Prerequisites

## Software involved in ISLE

ISLE uses the following software in order to help you set up and run your site. If you are new to any of the following software, that's OK, but learning more about each piece will make it much easier to modify ISLE to suit your particular needs, and maintain your Islandora site.

The following pieces of software are not unique to Islandora, and there are many great resources online to learn more about them. Below is a brief introduction to each piece and how they fit into your Islandora site. There are also many great videos on the [Islandora Foundation's YouTube page](https://www.youtube.com/@islandorafoundation9224/videos) if you would like to learn more about how they are used within the context of Islandora.

### Git

Git is a version control system that is used to store the code for Islandora. When you first download ISLE you will be downloading it using Git. Git is also useful for managing your site's Drupal codebase, once you have a site up and running.

More about using Git for Drupal sites can be found in the [Drupal documentation](https://www.drupal.org/docs/develop/git/setting-up-git-for-drupal).

### Docker

Docker allows us to run our Islandora sites in virtualized environments, called containers. Each container runs one part of the Islandora software, and it takes several containers to run a complete Islandora site.

The three main components of Docker are Images, Containers, and Volumes.

#### Images

Images are what our containers are built from. Images are read-only, and allow us to quickly create containers based on them.

The Islandora images are provided by [Islandora Buildkit](https://github.com/Islandora-Devops/isle-buildkit).

#### Containers

Containers are where the Islandora software actually runs. ISLE gives us tools to easily download the Islandora images and start our containers from them.

#### Volumes

Volumes are where our persistent storage lives. Because containers are often rebuilt from images, any data stored in them is easily lost. Volumes allow us to store specific parts of our containers that we don't want to lose. For example, our Drupal database will live in a volume so that it is not lost when a container is shut down.

### Docker Compose

Docker Compose is a tool to simplify the process of running multiple Docker containers for a single project. It uses a file called docker-compose.yml to store the settings for your project's containers. ISLE gives us tools to create this docker-compose.yml file, so we can use it to manage the containers for our site.

### GNU Make

Make allows us to define commands that simplify installing and maintaining our Islandora site. For a complete list of available commands see the Makefile included with ISLE.

### Composer

Composer is a dependency manager for PHP, and is the recommended way to install and update Drupal modules. Composer is installed in the Islandora Drupal container and should be run within the container to manage your Drupal site. More information on using Composer with Drupal is available in the [Drupal documentation](https://www.drupal.org/docs/develop/using-composer/manage-dependencies).

### Drupal

Drupal is a Content Management System used to create websites. During the setup of your Islandora site, a Drupal site is created for you in your Drupal container, by the commands in the Makefile.

### Drush

Drush is a command line tool for managing your Drupal site. It comes installed in your Drupal container and allows you to perform Drupal actions from the command line inside your container.

## Requirements for using ISLE with Docker Compose

- Docker 19.x+
Expand Down

0 comments on commit 7b8d643

Please sign in to comment.