Skip to main content

Developer Environment Overview

In development and testing environments, you can deploy the One37 Platform and support applications all on the same host using Docker Compose.

This is the fastest way to get started with the platform.

System Prerequisites

  • Docker 20.x or higher
  • Docker Compose 1.27.x or higher
  • PostgreSQL 12.x or higher docker image
  • Redis 6.x or higher docker image
  • NGINX Proxy Manager 2.x or higher docker image
  • One37 Business Studio & Business Connector docker images
  • TLS Certificate
  • Domain Name

Building the Environment

If you don't already have a Linux virtual machine with the required software installed, you can follow the guides below to configure everything you need. Return here when you are done.

The final step before deploying the One37 Platform is to configure the databases.

  • PostgreSQL database
  • Redis cache

Normally this would involve individual guides for each component, but Docker allows us to easily combine several components into a single Docker Compose definition file.

This compose file can be placed in the Linux user home folder or a specific working folder; e.g ~/one37id. In it, we will define the services and their dependencies.

NOTE

We will leverage the docker network proxy that was created when we setup NGINX Proxy Manager to allow the components to communicate with each other.

Database config

Copy & paste the following database configuration in the file: docker-compose.yml

docker-compose.yml
  db:
container_name: db
image: postgres
ports:
- '5432:5432'
restart: always
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_USER=postgres
volumes:
- pgdata:/var/lib/postgresql/data

redis:
container_name: redis
image: 'bitnami/redis:latest'
restart: always
environment:
- REDIS_PASSWORD=redis
ports:
- '6379:6379'
volumes:
- redisdata:/bitnami/redis/data

adminer:
container_name: dbadmin
image: adminer
depends_on:
- db
restart: always
ports:
- '8080:8080'

rc:
image: rediscommander/redis-commander:latest
restart: always
container_name: rc
depends_on:
- redis
ports:
- 8081:8081
environment:
- REDIS_HOST=redis
- REDIS_PORT="6379"
- REDIS_PASSWORD=redis
- HTTP_USER=rcuser
- HTTP_PASSWORD=rcpassword@redis
volumes:
- rcdata:/redis-commander/config

volumes:
pgdata:
driver: local

redisdata:
driver: local

rcdata:
driver: local
info

We have included the adminer and redis-commander web utilities to allow us to view the databases and cache.

Run the containers

docker compose up -d
tip

You can watch the logs using by omitting the -d flag. Run this in a separate terminal window or tmux session. The PostgreSQL database will take a few minutes to initialize the first time it is run.

Setup the One37 Platform Applications

Full instructions on how to setup the rest of the One37 Platform components can be found in the Quick Install Guide.

X

Graph View