How to deploy in production
Last updated
Was this helpful?
Last updated
Was this helpful?
Download olo full app and extract it
Open terminal in extracted folder
run cd olo-api
in terminal
Set environment file (.env)
NODE_ENV=production
PORT=8000
CONNECTION_STRING={DB Connection string}
RESET_PASSWORD_LINK=https://{Domain name}/auth/reset/?reset= SERVER_URL=https://{Domain name}/
NOTIFICATION_ON_CLICK=https://{Domain name}/dashboard
Create an account on mongo atlas, then Create a database on mongo atlas, copy connection string and paste it in .env
against the key CONNECTION_STRING
. Read more about how to use mongo atlas
run npm install
or yarn install
to install packages
run pm2 start app.js
in terminal to start server
You can further read about how to make it public or how to map it on your domain here
How To Secure Nginx with Let's Encrypt (SSL):
If you have a different environment and previous instructions dont work for your requirement you can let us know we'll be happy to help you.
run this command in terminal on server chmod -R 777 food-delivery-api/*
. This gives permission to read/write files, it is needed to upload food,profile images on server
NOTE: For notifications to work on android you'll have to upload FCM token on expo server. Read more about it
run cd olo-admin
in terminal
Install packages by npm install
or yarn install
update server_url
in /config/config.js
with the ip/domain of where you hosted api in last step
Replace keys in index.js
file
run npm run build
it will create a build folder. here we can publish in many ways but we are going to mention one that we use if you want to know others you will find several tutorials on how to deploy react applications for production.
copy build folder into your api folder
restart api server by pm2 restart <App Id>
. App id can be found by running pm2 list
you can now access admin dashbaord on www.domain.com/dashboard
Go to folder olo-app
Install packages by npm install
or yarn install
Replace these keys in app.json
with live keys. You can find more about these by clicking on each key.
stripeImageUrl; logo image url for store
stripeStoreName; store name
replace "homepage": "" in package.json with the url where you are going to deploy your admin.