# install node.js wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash # you may need to reopen terminal nvm install 8.11.3 mkdir jsreportapp cd jsreportapp npm i -g jsreport-cli jsreport init jsreport configure # chrome dependencies sudo apt-get install -y libgconf-2-4 sudo wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' sudo apt-get update sudo apt-get install -y google-chrome-unstable fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst --no-install-recommends # on ubuntu 20 run also sudo apt-get install -y libxtst6 libxss1 # start jsreport to see it running on port 5488 jsreport start # the next steps are optional to start jsreport on boot npm install pm2 -g pm2 start server.js pm2 startup # run the output of previous command # optionally if you want to use older phantomjs for pdf rendering sudo apt-get install -y --no-install-recommends gnupg git curl wget ca-certificates sudo apt-get install -y --no-install-recommends xfonts-base xfonts-75dpi npm i jsreport-phantom-pdf --save --save-exact Running on port 80 and 443 without SU $ setcap 'cap_net_bind_service=+ep' /path/to/.nvm/v0.10.17/bin/node $ apt-get remove nginx $ cd /path/to/app $ PORT=80 node app