Skip to content

Fresno Installation

Michael Edgar edited this page Sep 4, 2020 · 3 revisions

Fresno is distributed as a Docker image and currently supports using a PostgreSQL database for the persistence of EDI message meta information.

When the software is purchased, you will be provided with credentials to access the image from the XLATE.IO LLC Docker registry. The user name will be the email address provided when the software was purchased.

Starting Up

Login to registry.xlate.io

$ docker login registry.xlate.io

Enter your credentials when prompted:

  • Username - email used at time of purchase
  • Password - to be provided via email within 48 hours of purchase

Pull the Application Image

$ docker pull registry.xlate.io/xlate/fresno:<VERSION>

The current can be found at https://github.com/xlate/fresno-info/blob/master/README.md

Running the Application

The easiest way to get started is to run Fresno and a PostgreSQL database using docker-compose. An sample configuration file is provided below. This sample creates three persistent data volumes: one for the database, one for Fresno's schema file storage, and another for Fresno's working storage. A Docker network is created (in this case fresnonet) to allow communication between the application and the database. The database is not exposed outside of the network in this example, whereas the Fresno application is available on port 8080. Database credentials are basic and are not intended to demonstrate security.

If you will be using Fresno's file interface feature, the /var/lib/fresno/data mount point should be bound to an OS directory that is readable and writable for UID 1001.

The version for services.fresno.image in the sample below (1.0.1) should be updated to the version of Fresno you intend to run. See https://github.com/xlate/fresno-info/blob/master/README.md for the current release version.

version: '3.3'
networks:
   fresnonet: null
services:
   fresno:
      image: registry.xlate.io/xlate/fresno:1.0.1
      networks:
      - fresnonet
      ports:
      - 8080:8080
      volumes:
      -  fresnodata:/var/lib/fresno/data
      -  fresnoschemas:/var/lib/fresno/schemas
      environment:
      - QUARKUS_DATASOURCE_DB_KIND=postgresql
      - QUARKUS_DATASOURCE_JDBC_URL=jdbc:postgresql://postgres1:5432/fresno
      - QUARKUS_DATASOURCE_USERNAME=fresno
      - QUARKUS_DATASOURCE_PASSWORD=password
   postgres1:
      image: postgres:12.3
      networks:
      - fresnonet
      volumes:
      - postgresdata01:/var/lib/postgresql/data
      environment:
      - POSTGRES_DB=fresno
      - POSTGRES_USER=fresno
      - POSTGRES_PASSWORD=password
      - PGDATA=/var/lib/postgresql/data/pgdata
volumes:
   fresnodata: {}
   fresnoschemas: {}
   postgresdata01: {}

To start the containers using docker-compose run the following commands. The --force-recreate option will create fresh containers for the versions specified in the YAML file - particularly useful when updating to a newer version.

docker-compose up --force-recreate -d
docker image prune -f