- Install Prerequisites, Follow the guideline from:
In order to run iDempiere you need to have a JDK (not JRE) version of java, and a proper database (PostgreSQL and Oracle are supported).
The examples on this guide are using the following versions:
Ubuntu 18.04.1 64 bits
PostgreSQL 9.6.10
PostgreSQL contrib (for UUID support) - already included after postgresql 10
OpenJDK 1.8.0_181 for release 5.1 / OpenJDK 10.0.2 for release 6.1
But this guide can be used in other systems (even Windows) taking care of installing the corresponding packages and using corresponding commands.
Contents
1 Install Ubuntu
2 Install PostgreSQL 9.6.10
2.1 Assign a password to user postgres
3 Install OpenJDK
3.1 Install OpenJDK 1.8.0_181 (for release 5.1)
3.2 Install OpenJDK 10.0.2 (for release 6.1)
4 Troubleshooting
4.1 Linux
4.1.1 config postgresql
4.2 Windows
Install Ubuntu
Please refer to http://www.ubuntu.com/download
Downloaded and installed Ubuntu Server 18.04.1 LTS
Install PostgreSQL 9.6.10
iDempiere can also run with Oracle 11G or 12C, and also with PostgreSQL >= 9.6, for this tutorial we use postgresql 9.6.10 - see http://www.postgresql.org/download/linux/ubuntu/ for details
echo "deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-9.6
sudo apt-get install postgresql-contrib-9.6 # not required after postgresql 10
sudo service postgresql start
sudo update-rc.d postgresql defaults
Assign a password to user postgres
In order to create the database the installer needs to know the password of user postgres, by default this user doesn't have a password in ubuntu (windows installer asks for a password).
In the event that there's no 'postgres' role in your postgres db, you have to create on your own using the following steps:
Connect to your postgres db instance via psql.
Create 'postgres' role via "CREATE USER postgres" without the double quote.
Alter the role and specify what the role suppose to be. EX. "ALTER USER postgres SUPERUSER CREATEDB" without the double quote.
Then you can proceed to the following steps.
Please take note of the password you assign here as it will be required in the setup process:
Steps are (replace your_chosen_password by your preferred):
sudo su - postgres
psql -U postgres -c "alter user postgres password 'your_chosen_password'"
logout
Install OpenJDK
Install OpenJDK 1.8.0_181 (for release 5.1)
sudo apt-get install openjdk-8-jdk
Install OpenJDK 10.0.2 (for release 6.1)
sudo apt-get install openjdk-10-jdk
Note: By default Ubuntu 18.04 doesn't have openjdk-10-jdk, it was required to add the repository with:
add-apt-repository ppa:openjdk-r/ppa
And then edit the file /etc/apt/sources.list.d/openjdk-r-ubuntu-ppa-bionic.list and change the first line to:
deb http://ppa.launchpad.net/openjdk-r/ppa/ubuntu xenial main
And also at the end of the file /etc/apt/sources.list add:
deb http://security.ubuntu.com/ubuntu xenial-security main
Now you have your prerequisites ready to receive the iDempiere installer
Troubleshooting
Linux
config postgresql
After installing postgres you must check the correct configuration of /etc/postgresql/9.6/main/pg_hba.conf These two entries must be configured to use password (md5):
local all all md5
host all all 127.0.0.1/32 md5
NOTE that some guides suggest configuring trust - but that creates a security issue on your postgres server.
- Downoad iDempiere 6.1
cd /
wget Download idempiereServerDev6.1Daily.gtk.linux.x86_64.deb (iDempiere)
mv download idempiereServerDev6.1Daily.gtk.linux.x86_64.deb
- Install using Debian Installer
IDempiere Debian Installer
Contents
1 Team
2 Goal
3 Known Restrictions
4 How to install
Team
Developer: Carlos Ruiz - GlobalQSS
Sponsor: Zeeshan Hasan - Sysnova
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.1 supported (not oracle or previous postgresql versions)
How to install
It DOES NOT require a graphical system - it can be used in servers
Prerequisites
Postgresql >= 9.1
sudo apt-get install postgresql-9.6
sudo apt-get install postgresql-contrib-9.6
sudo apt-get install openjdk-8-jdk
Download the Debian Installer (idempiere.gtk.linux.x86.deb for 32 bits and idempiere.gtk.linux.x86_64.deb for 64 bits). The installer can be downloaded from:
For version 5.1
or for development version
Execute the installer
sudo dpkg -i idempiereServer5.1Daily.gtk.linux.x86_64.deb # or idempiereServer5.1Daily.gtk.linux.x86.deb for 32 bits
this step check the prerequisites, copy the needed files into /opt/idempiere-server and /etc, create 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:
HTTP Port [8080]
HTTPS Port [8443]
adempiere db password (this is mandatory - special characters with meaning for linux shell are not allowed in password)
check adempiere db password
postgres password - you can leave the password empty to use the direct connection from postgres user
start at boot [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
To start the server you can reboot the machine or run:
sudo /etc/init.d/idempiere start
- Fix error on Installer
Redirecting to Google Groups
Follow:
||Andrea Checchia|
Oct 17|
| — | — | — |
Goodmorning everyone.
I was able to understand the problem: in the file “… / org.adempiere.server-feature / setup.ini” there is the declaration of the startup
-startupplugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar-installsetup--launcher.XXMaxPermSize192m-vmargs-Dosgi.noShutdown=false-Dosgi.compatibility.bootdelegation=true
While in the “server-iDempiere” package the jar created by build mvn is the following
org.eclipse.equinox.launcher_1.5.100.v20180827-1352.jar
Modifying this declaration the “setup.sh” command worked
Andrew
- show quoted text -
- Install Webmin /Apache2
cd /etc/apache2/site-available/
vi 000-default.conf
<VirtualHost *:80>
ProxyPreserveHost On
# Servers to proxy the connection, or;
# List of application servers:
# Usage:
# ProxyPass / http://[IP Addr.]:[port]/
# ProxyPassReverse / http://[IP Addr.]:[port]/
# Example:
ProxyPass / http://0.0.0.0:8080/
ProxyPassReverse / http://0.0.0.0:8080/
ServerName localhost
</VirtualHost>
### to enable ssl,
### - uncomment the below virtualhost session
### - create a directory named /etc/apache2/ssl/
### - follow these instructions in your new directory http://www.akadia.com/services/ssh_test_certificate.html
####### - sudo mkdir /etc/apache2/ssl
####### - cd /etc/apache2/ssl
####### - sudo openssl genrsa -des3 -out server.key 1024
####### - sudo openssl req -new -key server.key -out server.csr
####### - sudo cp server.key server.key.org
####### - sudo openssl rsa -in server.key.org -out server.key
####### - sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
#<VirtualHost *:443>
# ProxyPreserveHost On
# SSLEngine On
# SSLProxyEngine On
# SSLCertificateFile /etc/apache2/ssl/server.crt
# SSLCertificateKeyFile /etc/apache2/ssl/server.key
# ProxyPass / http://0.0.0.0:8080/
# ProxyPassReverse / http://0.0.0.0:8080/
#</VirtualHost>
### to enable ssl with authentication - NOTE: only use one ssl option,
### - uncomment the below virtualhost session
### - Follow the above SSL directions to create your own test cert/key
#<VirtualHost *:443>
# ErrorLog /var/log/apache2/iDempiereProxy.error.log
# LogLevel info
# CustomLog /var/log/apache2/iDempiereProxy.log combined
# # which db
# DBDriver pgsql
# DBDParams "host=localhost port=5432 user=adempiere password=YOUR_PASSWORD_HERE dbname=idempiere"
# #Connection Pool Management
# DBDMin 1
# DBDKeep 2
# DBDMax 10
# DBDExptime 60
# <Proxy *>
# # core authentication and mod_auth_basic configuration
# # for mod_authn_dbd
# AuthType Basic
# AuthName "Backend auth name"
# AuthBasicProvider dbd
# # core authorization configuration
# Require valid-user
# # mod_authn_dbd SQL query to authenticate a user
# AuthDBDUserPWQuery \
# "SELECT '{SHA}'||encode(digest(password,'sha1'),'base64') as password FROM ad_user WHERE exists (select * from ad_user_roles where ad_user_id = ad_user.ad_user_id) and name = %s"
# AddDefaultCharset Off
# Order deny,allow
# Allow from all
# </Proxy>
# ProxyPreserveHost On
# SSLEngine On
# SSLProxyEngine On
# SSLCertificateFile /etc/apache2/ssl/server.crt
# SSLCertificateKeyFile /etc/apache2/ssl/server.key
# ProxyPass / http://0.0.0.0:8080/
# ProxyPassReverse / http://0.0.0.0:8080/
# TimeOut 50400
#</VirtualHost>
enable apache module for proxy
apache modules needed to support reverse proxy
sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html
sudo a2enmod dbd
sudo a2enmod authn_dbd
sudo a2enmod ssl
sudo service apache2 restart
- Install Letsencrypt SSL using certbots