1
0
Fork 0
Odoo Point of Sale - PoS - Distribution. Dockerfiles and Kubernetes Configuration
This repository has been archived on 2022-08-09. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Tobias Brunner c215821c13 disable useless logging 2019-07-23 21:21:41 +02:00
backup regular backup with restic 2018-08-05 12:27:38 +00:00
deployment add ingress definition 2019-07-23 18:44:32 +00:00
docs some screenshots 2019-06-30 17:02:33 +02:00
iotbox disable useless logging 2019-07-23 21:21:41 +02:00
monitoring monitoring based on checkup 2018-08-05 15:49:46 +00:00
odoo pimp big number to be really big 2019-07-06 19:47:36 +02:00
.gitignore monitoring based on checkup 2018-08-05 15:49:46 +00:00
README.md update docs 2019-07-23 18:55:58 +00:00
checkup.json.example monitoring based on checkup 2018-08-05 15:49:46 +00:00
docker-compose.yml specify image 2019-07-14 19:51:27 +02:00

README.md

Odoo Pos Distribution

Dockerfiles, Docker Compose and Kubernetes configuration for running an Odoo based PoS in container and Kubernets.

Additionally it contains pos-addons for using receipt printers over the network.

Quickstart

Docker Compose

  1. docker-compose up

Continue with "Odoo PoS configuration"

Kubernetes / K3s

The provided YAML files have been developed and tested with k3s. Installation will happen in the namespace pos.

  1. Install k3s (any other Kubernetes should work as well)
  2. Install local-path-provisioner
  3. Apply the deployment YAMLs: kubectl apply -f deployment/

Continue with "Odoo PoS configuration"

Odoo PoS configuration

  1. Connect to Odoo and create a new database On Kubernetes the Ingress defines the hostnames pos and iotbox
  2. Install Odoo Apps:
  • "Point of Sale"
  • "POS Network Printer"
  1. (Enable "Developer mode" under Odoo settings)
  2. Configure PoS for IoT Box (see docs/iotbox-config.png)
  3. Configure Order Printer (see docs/orderprinter.png)

Hardware and Networking

  • Default network assumed: 192.168.233.0/24
  • Printers: 192.168.233.3 and 192.168.233.5
  • Printers used in this project: Epson TM-T20II

More hardware description and a network diagram: tbd.

Backup configuration

Example contents of backup.env:

RESTIC_REPOSITORY=rclone:myremote:posbackup
RESTIC_PASSWORD=extremelysecurepassword
RCLONE_CONFIG_FWUCLOUD_TYPE=webdav
RCLONE_CONFIG_FWUCLOUD_URL=https://nextcloud.example.com/remote.php/webdav/
RCLONE_CONFIG_FWUCLOUD_VENDOR=nextcloud
RCLONE_CONFIG_FWUCLOUD_USER=backupuser
RCLONE_CONFIG_FWUCLOUD_PASS=encryptedpassword
PGDATABASE=odoodbname

Restore of DB:

createdb -T template0 restoretest
pg_restore -d restoretest /data/odoo_data.dump

Notes

  • Connection from PoS Tablet to IoT Box is a direct connection, not via Odoo server!
  • Support for opening the cashbox via network printer has been patched. The IP is hardcoded to 192.168.233.3. See 0c6ecfdd and #730.