136 lines
3.2 KiB
Markdown
136 lines
3.2 KiB
Markdown
![Diagram deploy](diagram.png "Deploy")
|
|
|
|
# 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](https://git.disroot.org/OneTeam/oc-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/
|