# This docker-compose file creates one
# compose 'project' consisting of two containers
#
#  1. The PostgreSQL data  container
#  2. The LedgerSMB application container
#
# LedgerSMB persists all its data in the database,
# so no special care needs to be taken on
# container upgrades.  With PostgreSQL, data is
# persisted across upgrades by the use of a
# special 'dbdata' volume

version: "3.2"
services:
  db:
    image: postgres:9.6-alpine
    environment:
      # Replace the password below for a secure setup
      POSTGRES_PASSWORD: abc
      PGDATA: /var/lib/postgresql/data/pgdata
    networks:
      - internal
    volumes:
      - "dbdata:/var/lib/postgresql/data"
  lsmb:
    depends_on:
      - db
    image: ledgersmb/ledgersmb:1.6
    networks:
      - internal
      - default
    # environment:
      # SSMTP_ROOT:
      # SSMTP_HOSTNAME:
      # SSMTP_MAILHUB:
      # SSMTP_AUTH_USER:
      # SSMTP_AUTH_PASS:
      # SSMTP_AUTH_METHOD:
      # SSMTP_USE_STARTTLS:
      # SSMTP_FROMLINE_OVERRIDE:

# having the dbdata volume is required to persist our
# data between PostgreSQL container updates; without
# that, the data is contained in the same volume as
# the rest of the image and on update/upgrade, the
# data will be lost.
volumes:
  dbdata:


networks:
  internal: