oc-docker-tryton-non-official/README.md

3.0 KiB

Description

Docker tryton-non_official It is a tool for deploying unofficial Tryton modules in Docker, including:

  1. Gnuhealth
  2. Kalenis
  3. NaNtic
  4. Datalife
  5. Presik
  6. Trytonar
  7. OneTeam
  8. Etrivial

Gnuhealth and Etrivial most be work whit tryton5.0

Dependencies:

Have docker 20 or higher installed and git

Multi migrate to gitea will be called at the time of the creation of the docker

Prerequisites

Clone repository:

git clone https://git.disroot.org/OneTeam/oc-docker-tryton-non-official.git
cd oc-docker-tryton-non-official

Edit Dockerfile and change lines commented example create Docker OneTeam:

#version Trytond server example 5.0
FROM tryton/tryton:6.0
#lebel custom
LABEL org.label-schema.version="6.0-my-one_team"
#version equal Tryond server version
ENV TRYTOND_VERSION="6.0"
#python version that will run the dockeri, e.g. python3.7
ENV PYTHON_VERSION="python3.7"
#version equal Tryond server version
ENV GITEA_ORG="OneTeam"
#domain server gitea
ENV GITEA_DOMAIN="git.disroot.org"
#if the module repository is private
ENV GITEA_USER="my-user"
ENV GITEA_PASSWORD="my-password"
ENV GITEA_ACCESS_TOKEN="45454515415465456456"
#By default all organizations are set to false, activate only one as true. 
ENV GnuHealth="False"
ENV Etrivial="False"
ENV Trytonar="False"
ENV OneTeam="True"
ENV Presik="False"
ENV Datalife="False"
ENV NaNtic="False"
ENV Kalenis="False"

Usage

docker build -t tryton/label . 

Note: in case of than you need rebuild your docker image from the beginning, we will have add the option '--no-cache'

Create a network of work for docker:

docker network create name_network

Create a volumen of storage for docker:

docker volume create name_volume

Export of variable of environment with password for our postgres, it is with the purpose of don't have to write many time the password

export POSTGRES_PASSWORD="password"

Create a postgres docker image

docker run \
 --name name_docker_postgres \
 --env PGDATA=/var/lib/postgresql/data/pgdata\
 --env POSTGRES_DB=name_database\
 --env POSTGRES_PASSWORD=${POSTGRES_PASSWORD}\
 --mount source=name_volume,target=/var/lib/postgresql/data\
 --network name_network\
 --detach\
 postgres

Create a database in our docker postgres image

docker exec --user postgres name_docker_postgres createdb name_database

fill the database with data

docker run \
 --env DB_HOSTNAME=name_docker_postgres\
 --env DB_PASSWORD=${POSTGRES_PASSWORD}\
 --network name_network\
 --interactive\
 --tty\
 --rm\
 tryton/label\
 trytond-admin -d name_database -vv --all

Run docker image with our tryton

docker run\
 --name name_docker_tryton\
 --env DB_HOSTNAME=name_docker_postgres\
 --env DB_PASSWORD=${POSTGRES_PASSWORD}\
 --network name_network\
 --publish 127.0.0.1:8000:8000\
 --detach\
 tryton/label

This guide refer to https://discuss.tryton.org/t/how-to-run-tryton-using-docker/3200, in case of any question it is recommended read https://docs.docker.com/get-started/