Deity Falcon Configuration
Table of Contents
First ensure that you have installed NodeJS and PM2 as per here
Creating a new Falcon install
Change to your VHost directory, in this example we use example.com
that is part of the example
domain-group:
cd /microcloud/domains/example/domains/example.com/
Run npx
to create the app in a directory called falcon
npx create-falcon-app falcon
Frontend app configuration
Edit falcon/client/config/default.json
and change the uri
value to point to the URL hosting your graphql server.
"apolloClient": {
"httpLink": {
"uri": "https://example.com/graphql"
}
},
Start the client:
cd /microcloud/domains/example/domains/example.com/falcon/client
pm2 start --name=deityclient npm -- run start:prod
GraphQL server configruation
Edit falcon/server/config/default.json
:-
- Set the following
api-magento2
values:Host
- The hostname of your Magento storeProtocol
- Should be set to HTTPS - your Magento site should have a valid SSL certificateUsername
- Username of the Falcon admin user on your Magento storePassword
- Password of the Falcon admin user on your Magento store
- Set the
endpoints
->magento
->config
->host
to your Magento hostname
Start the API server:
cd /microcloud/domains/example/domains/example.com/falcon/server
pm2 start --name=deityserver npm -- run start:prod
Save PM2 configuration
Typing pm2 save
will remember the processes that have been started and restart them in the event of an unexpected reboot.
Nginx/VHost configuration (Magento hosted on another domain/VHost)
# Deity Falcon GraphSQL Server
location ~ ^/graphql(/.|$) {
include sites-config/magestack-headers.conf;
proxy_pass https://acc1.i:4000;
}
# Passthrough for all other Requests to NodeJS
location ~* ^/ {
include sites-config/magestack-headers.conf;
proxy_pass https://acc1.i:3000;
}
After implementing one of the above rulesets, you should ensure you test and reload the nginx configuration.