Tryton: Installazione con tecnologia Docker
16 Dicembre 2021

Tryton: Installazione con tecnologia Docker

In questo articolo spiegherò come installare Tryton, gestionale 100% open source.

Ci sono diversi modi per installarlo, oggi illustrerò come installarlo tramite Docker.

Se non hai letto il mio articolo su cos’è Tryton, clicca qui!

Bando alle ciance e iniziamo!

Requisiti

Per poter effettuare una corretta installazione avrai bisogno di un accesso al tuo sistema come utente root e installare Docker. Per installare Docker ti lascio il link al sito ufficiale.
Se stai utilizzando una distribuzione linux segui i passaggi di post-installazione se non vuoi sempre anteporre sudo ogni volta che lanci il comando docker.

Breve preambolo su Docker

Se non hai dimistichezza con Docker, di seguito inserisco dui concetti fondamentale di tale tecnologia:

Lavorare con Docker

Per rendere Tryton funzionante avremo bisogno di utilizzare diversi container generati da immagini diverse. Questo tipo di architettura utilizzerà tre livelli: database, tryton, interfaccia utente (via web o via client desktop).

Per fare in modo che i containers creati possano dialogare tra loro è necessario creare una rete bridge docker (come ho scritto prima i container sono entità isolate e bisogna trovare un modo per poterli far comunicare tra loro).

Creo una rete docker

Per creare una rete docker “generata dall’utente”, che chiamerò tryton-net, bisogna lanciare il comando:

$ docker network create tryton-net

Creo un container che gestirà i databases

In questo container verranno archiviati la maggior parte dei dati elaborati e gestiti da Tryton. Il DBMS (Database Management System) usato da Tryton nei sistemi production è PostgreSQL.

Come accennato prima, i containers vengono usati in modo usa e getta. Per far sì che i dati archiviati nel database non svaniscano se sostituisci il container PostgreSQL, utilizzerò un volume Docker:

$ docker volume create tryton-db

Questo comando creerà un volume Docker chiamato tryton-db che potrà essere montato all’interno di un container.
Tutti i dati archiviati nel volume dal container continueranno a persistere anche dopo l’eliminazione del container in cui è stato montato.

Avvio del container PostgreSQL

Per poter avviare un container PostgreSQL è necessario avere una immagine Docker di PostgreSQL. L’immagine è disponibile nel Docker Hub e supportata ufficialmente da PostgreSql.

Una volta lanciato il comando per avviare un container, se l’immagine docker non è presente nel sistema locale, docker cercherà di scaricarlo dal docker hub.

Quindi, ora dovresti essere pronto per avviare il container PostgreSQL utilizzando il seguente comando:
(ricordati di sostituire <password> con la tua password):

docker run \
--name tryton-postgres \
--env PGDATA=/var/lib/postgresql/data/pgdata \
--env POSTGRES_DB=tryton \
--env POSTGRES_PASSWORD=<password> \
--mount source=tryton-db,target=/var/lib/postgresql/data \
--network tryton-net \
--detach \
postgres


Cosa farà questo comando?

Inizializzo il database

Ora che il container tryton-postgres è in esecuzione è possibile inizializzare il database tryton creato con il comando precedente. Il comando che segue effettuerà tutte le operazioni di inizializzazione e ti richiederà di inserire l’email e la password dell’utente admin. Questo operazione durerà qualche secondo:

$ docker run \
    --env DB_HOSTNAME=tryton-postgres \
    --env DB_PASSWORD=<password> \
    --network tryton-net \
    --interactive \
    --tty \
    --rm \
    tryton/tryton \
    trytond-admin -d tryton --all

Cosa fa questo comando?

Creo il container Tryton

Il container Tryton costituisce il livello intermedio nell’architettura a tre livelli descritta precedentemente e fornisce la logica di business.
L’avanzata modularità di Tryton ti permetterà di selezionare la corretta logica di business per le tue esigenze attivando solo i moduli che intendi utilizzare.

Sebbene la maggior parte dei dati di Tryton sia memorizzata nel database, potrebbero essercene alcuni memorizzati nel filesystem. Tryton normalmente memorizza gli allegati al di fuori del database e può essere configurato per archiviare anche altre tipi di dati (ad es. copie di fatture di vendita). Per assicurarti di non perdere questi dati se sostituisci il tuo container Tryton, puoi utilizzare, anche in questo caso, un volume Docker:

$ docker volume create tryton-data

Questo volume deve essere montato all’interno di tutti i contenitori Tryton che vengono creati.

Creo il container Tryton:

$ docker run \
    --name tryton \
    --env DB_HOSTNAME=tryton-postgres \
    --env DB_PASSWORD=<password> \
    --mount source=tryton-data,target=/var/lib/trytond/db \
    --network tryton-net \
    --publish 8000:8000 \
    --detach \
    tryton/tryton

Cosa fa questo comando?

Testo il funzionamento del sistema con il client

Il client è il livello più alto nell’architettura a tre livelli di Tryton e ci sono diversi client tra cui scegliere.

Il client Web Tryton è fornito nell’immagine Docker di Tryton e consente di connettersi facilmente utilizzando il browser Web. 

È possibile accedere al server Tryton visitando http://<indirizzo-ip>:8000/ nel tuo browser. 
Per accedere dovrò inserire come nome utente admin e poi la password che hai inserito durante l’inizializzazione del database.

Per poter utilizzare il client desktop, bisognerà effettuare il download da qui
Bisognerà poi configurare l’accesso inserendo come come host <indirizzo-ip>:8000 e come utente admin.
Il database verrà selezionato automaticamente (verrà rilevato dal client se l’indirizzo è corretto e se il sistema è stato configurato correttamente).

Spero che questo articolo ti sia stato d’aiuto per farti conoscere questo gestionale open source di alto livello.
Non ti resta che sperimentare.

Alla prossima!


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *