Skip to content
This repository has been archived by the owner on Feb 1, 2024. It is now read-only.

adempiere/adempiere-middleware

Repository files navigation

ADempiere Middleware

Java Build GH Action License GitHub release Discord

This project is the first initiative for improve ADempiere as a microservice based. Currently ADempiere is very monolithic structure.

I just want to improve ADempiere for many concorrent users.

Requirements

The ADempiere middleware is a service to expose ADempiere as gRPC service with a little functionality of ADempiere:

  • Create Entity
  • Update Entity
  • Delete Entity
  • Delete Entity

Since the ADempiere dependency is vital for this project is high recommended that the you are sure that of project adempiere-jwt-token is installed and the setup is runned in ADempiere Database.

Run it from Gradle

gradle run --args="resources/env.yaml"

Some Notes

For Token validation is used JWT

Run with Docker

docker pull openls/adempiere-middleware:alpine

Minimal Docker Requirements

To use this Docker image you must have your Docker engine version greater than or equal to 3.0.

Environment variables

  • DB_TYPE: Database Type (Supported Oracle and PostgreSQL). Default PostgreSQL
  • DB_HOST: Hostname for data base server. Default: localhost
  • DB_PORT: Port used by data base server. Default: 5432
  • DB_NAME: Database name that adempiere-middleware will use to connect with the database. Default: adempiere
  • DB_USER: Database user that adempiere-middleware will use to connect with the database. Default: adempiere
  • DB_PASSWORD: Database password that Adempiere-Backend will use to connect with the database. Default: adempiere
  • SERVER_PORT: Port to access adempiere-middleware from outside of the container. Default: 50059
  • SERVER_LOG_LEVEL: Log Level. Default: WARNING
  • TZ: (Time Zone) Indicates the time zone to set in the nginx-based container, the default value is America/Caracas (UTC -4:00).

You can download the last image from docker hub, just run the follow command:

docker run -d -p 50059:50059 --name adempiere-middleware -e SERVER_PRIVATE_KEY="<Your ADempiere Token>" -e DB_HOST="localhost" -e DB_PORT=5432 -e DB_NAME="adempiere" -e DB_USER="adempiere" -e DB_PASSWORD="adempiere" openls/adempiere-middleware:middleware:alpine

See all images here

Run with Docker Compose

You can also run it with docker compose for develop enviroment. Note that this is a easy way for start the service with PostgreSQL and middleware.

Requirements

docker compose version
Docker Compose version v2.16.0

Run it

Just go to docker-compose folder and run it

cd docker-compose
docker compose up

Some Variables

You can change variables editing the .env file. Note that this file have a minimal example.