3.2 KiB
Description
Docker tryton-non_official It is a tool for deploying unofficial Tryton modules in Docker, including:
- Gnuhealth
- Kalenis
- NaNtic
- Datalife
- Presik
- Trytonar
- OneTeam
- 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
If you going to use tryton 6.2, must be use python3.9. This change was done by team tryton.
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/