IDempiere Debian Installer

From iDempiere en

Team

Goal

  • Create an automatic installer for Debian based systems - tested on Ubuntu
    • Emphasis done in the word automatic - the intention is to ask the user the minimum variables required and do all the necessary steps to leave an iDempiere working

Known Restrictions

  • This installer just works if postgresql installed on the same machine (it uses direct connection to postgresql - unix sockets to avoid configuring and asking for a postgres password).
  • It requires to be run as root (this is usual with sudo dpkg)
  • just PostgreSQL >= 9.6 supported (not oracle or previous postgresql versions)

How to install

  • It DOES NOT require a graphical system - it can be used in servers.

This example is conducted in Ubuntu 20.04

  • Prerequisites
    • netstat is required
      • sudo apt-get install net-tools
    • Java >= 11
      • sudo apt-get update
      • sudo apt-get install openjdk-11-jdk-headless
    • Postgresql >= 9.6 (for this example we install version 12, but any version >= must work)
      • sudo apt-get install postgresql-12
      • Note when installing version 9.6 you must install also postgresql-contrib-9.6
  • Download the Debian Installer:
  • Execute the installer (example for 7.1):
    • sudo dpkg -i idempiereServer7.1Daily.gtk.linux.x86_64.deb
      • this step checks the prerequisites, copies the needed files into /opt/idempiere-server and /etc, creates iDempiere user and group and assign proper permissions to the files. At the end, it displays a message to the user "You must run '/etc/init.d/idempiere configure' as the root user to configure the application."
  • Configure iDempiere as root
    • sudo /etc/init.d/idempiere configure
      • this step asks the minimum required user variables, fill them properly or just push enter to get the default in square brackets:
      • Specify the HTTP port that will be used for iDempiere server [8080]:
      • Specify the HTTPS port that will be used for iDempiere server [8443]:
      • Specify a password to be used for adempiere database account: (this is mandatory - special characters with meaning for linux shell must not be used in password)
      • Confirm the password: confirm the password given above
      • Specify the password of the user postgres on postgres database (if empty then local connection will be tried): - you can leave the password empty to use the direct connection from postgres user
      • Do you want iDempiere ERP Server to be started on boot (y/n) [y]:
    • After this the deployment is executed (console-setup.sh), the import of the database is done (RUN_ImportIdempiere) and the service is installed to start on boot.
  • First execution:
    • sudo SYSTEMCTL_SKIP_REDIRECT=1 /etc/init.d/idempiere start
  • To start the server you can reboot the machine or run:
    • service idempiere stop
    • service idempiere start