Skip to content

Latest commit

 

History

History
157 lines (130 loc) · 6.31 KB

README.md

File metadata and controls

157 lines (130 loc) · 6.31 KB

ADempiere gRPC Server

Java Docker Pulls Publish GH Action License GitHub release Discord

English | Spanish

This is a project to publish ADempiere, over gRPC service, decoupling in modules such as Access, Application Dictionary, Business, Point Of Sales, Workflow, Dashboarding, File Management, Logs, Requests (as Issue Management), User Customization, etc.

Recreate proto stub class

For recreate stub class you must have follow:

Runing as development

Clean

gradle clean

Execute server with default conection file

gradle run

Execute server with custom conection file

gradle run --args="'resources/standalone.yaml'"

Runing Server

The server can be running as java class. See it: org.spin.server.AllInOneServices Don't forgive that for run server you need set yaml file line is /resources folder.

  • Use latest release
  • Unzip binary
  • Go to bin folder
  • Run it
./adempiere-all-in-one-server "./resources/standalone.yaml"

For all enviroment you should run the follow images:

docker pull solopcloud/adempiere-postgres
docker pull solopcloud/adempiere-backend:experimental
docker pull solopcloud/adempiere-proxy:experimental
docker pull solopcloud/adempiere-vue:experimental

Run docker container:

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-Backend will use to connect with the database. Default: adempiere.
  • DB_USER: Database user that Adempiere-Backend 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.
  • IDLE_TIMEOUT: It sets the maximum time a connection can sit around without being used before it gets closed to free up resources. Default: 300.
  • MINIMUM_IDLE: It sets the minimum number of connections that should be kept open and ready to use, even if they're not currently being used. This helps improve performance by reducing the time it takes to get a connection. Default: 1.
  • MAXIMUM_POOL_SIZE: It sets the maximum number of connections that can be open at the same time. This helps prevent the pool from getting too big and using up too much memory. Default: 10.
  • CONNECTION_TIMEOUT: it sets the maximum time HikariCP will wait to get a connection from the pool before giving up and throwing an error. Default: 5000.
  • MAXIMUM_LIFETIME: It sets the maximum amount of time a connection can stay open in the pool before it's automatically closed. This helps keep the pool clean and prevents problems. Default: 6000.
  • KEEPALIVE_TIME: It sets a test query that HikariCP will run on connections to make sure they're still working properly. Default: 360000.
  • CONNECTION_TEST_QUERY: It sets how often HikariCP will check if a connection is still working properly. This helps prevent problems with connections that might become inactive. Default: SELECT 1
  • SERVER_PORT: Port to access Adempiere-Backend 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).
  • SYSTEM_LOGO_URL: Logo of the main image of the system, shown in the login screen.

Build docker image (for development only):

First compile output files.

# Assembles the outputs of this project.
gradle assemble

# Or Assembles and tests this project.
gradle build

Build docker image (alpine)

docker build -t solopcloud/adempiere-backend:alpine-dev -f ./docker/alpine.Dockerfile .

Build docker image (multi-arch)

docker build -t solopcloud/adempiere-backend:dev -f ./docker/focal.Dockerfile .

Download docker image:

docker pull solopcloud/adempiere-backend:alpine

Run container container:

docker run -it -d \
	--name adempiere-backend \
	-p 50059:50059 \
	-e DB_HOST="your-db-host" \
	-e DB_PORT="5432" \
	-e DB_NAME=\"adempiere\" \
	-e DB_PASSWORD="adempiere" \
	-e JWT_SECRET_KEY="your-json-web-token-secret-key" \
	-e TZ="America/Caracas" \
	solopcloud/adempiere-backend:alpine

Run with Docker-Compose

Or easy run container using docker-compose with follow command:

docker compose -f build-docker/docker-compose.yaml up