This is in addition to, rather than a replacement of guardian/grid/readme.md
guide.
brew install graphicsmagick --with-little-cms2
brew install ExifTool
# --with-gd is required to use nginx for imgops.
brew install nginx-full --with-gd
Install AWS command line if you don't already have it:
pip install awscli
Install the front end packages and build the distribution.
cd kahuna
npm install
./dist.sh dist
Note: If you need to install node then I would recommend using nvm.
See: https://github.com/guardian/pan-domain-authentication#requirements
- When setting up panda you'll have to set the environment variable
PANDA_BUCKET_NAME
as s3 bucket names must be globally unique. - When configuring the Google App credentials be sure to add:
https://media.example.com
to "Authorized JavaScript origins" andhttps://media.example.com/oauthCallback
to "Authorized redirect URIs". - When taking the example
<domain>.settings
file I originally missed that this also required asecret
entry set to some random string. <domain>.settings
file isexample.com.settings
for this example.
Deploy all of the nginx .conf
, .crt
and .key
files to their gist locations.
Copy-paste the /etc/hosts entries in this gist into /etc/hosts, you'll need sudo.
Start nginx:
sudo nginx
And you can later stop it with sudo nginx -s stop
Start elasticsearch:
cd elasticsearch
./dev-start.sh
Start each of the following media-services in a terminal:
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt 'project media-api' 'run 9001'
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt 'project thrall' 'run 9002'
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt 'project image-loader' 'run 9003'
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt 'project kahuna' 'run 9005'
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt -Dws.acceptAnyCertificate=true 'project cropper' 'run 9006'
PANDA_BUCKET_NAME={YOUR_PANDA_BUCKET_NAME} sbt 'project metadata-editor' 'run 9007'
Hit thrall to actually get it to start fetching from SNS: curl http://localhost:9002/
This is super awesome 👍