Islandora-Devops / isle-dc

ISLE 8 - Dockerized Islandora 8 Deployment orchestrated with docker-compose
MIT License
22 stars 60 forks source link

Write up new README for how to use this merged build manually #25

Closed g7morris closed 4 years ago

g7morris commented 4 years ago
g7morris commented 4 years ago

We should also include where and what things are e.g. codebase, data etc.

noahwsmith commented 4 years ago

Here's my modification of the MVP3 Installation instructions, but I fear things are moving too fast for me to be able to do comprehensive updates.

## Install instructions

Launch a terminal and follow these steps below:

* On your local, add the local domain/site to `/etc/hosts`
  * `sudo nano /etc/hosts`
  * add `127.0.0.1   idcp.localhost` as a seperate line underneath `127.0.0.1       localhost`
  * save and exit the hosts file

* Within the terminal, navigate to a directory of your choice that you can start working

* Clone the ISLE 8 project (isle-dc)
* `git clone https://github.com/Islandora-Devops/isle-dc.git`

* `cd isle-dc`

* Generate public/private key pair for JWTs (only has to be done once)
  * `make jwt_keys`

* Generate a Drupal codebase
  * `COMPOSER_MEMORY_LIMIT=-1 make isle_codebase=islandora`

* Pull down Docker images & boot
  * `docker-compose pull`
  * `docker-compose up -d`

* Create a new Solr core called "islandora"
  * `docker exec -it isle_dc_proto_solr bash -c "solr create_core -c islandora"`

* Run the Drupal site installation script
  * `docker exec -it isle_dc_proto_php bash -c "sh /scripts/islandora/install-islandora.sh"`
  * This script will take at least 5-10 mins depending on the speed of your internet connection and/or local environment.

* Access site at: http://idcp.localhost:8000

* To be provided an admin login, run `docker-compose -p islandora exec drupal drush uli`

* Test Houdini with by running `identify` on the Islandora logo:
  * `curl -H "Authorization: Bearer islandora" -H "Apix-Ldp-Resource: https://islandora.ca/sites/default/files/Islandora.png" idcp.localhost:8000/identify`

* The directory `/var/www/html` is bind mounted in both the Apache and PHP services / containers to the local directory `isle-dc/codebase`. This directory is in the .gitignore file to ignore the contents of this data directory.

* To shut down the containers but persist data
  * `make down`

* To **destroy** containers and data including the Drupal site and all content. This is essential when re-testing or re-installing.
  * `make clean` (or slightly lighter `make clean_local`)

* For more important commands, see the `Makefile`
noahwsmith commented 4 years ago

@g7morris I did have a second to make the doc PR after I got my local squared away...