Page tree

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

This is installation is for new installations. If you upgrade from an existing installation see translate5 > 5.8.0 - needed visualreview to docker migration

Precondition on host system

On the host system docker and docker-compose must be installed.

License agreement

The translate5 installation consists of several Docker images providing the needed software apart from translate5 itself.

In order to use the docker compose files you have to remove the whole LICENSE DISCLAIMER, from START to END.

By removing these lines you accept the several different licenses used by the main software brought contained in each of the docker images, that you install. Which license this is you can see in the readme of every of those images on dockerhub.

As with all Docker images, the installed images likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of these images complies with any relevant licenses for all software contained within.

Install translate5 and its services

Get docker-compose.yml

Get the latest docker-compose.yml file.

Remove the license disclaimer from the file before using it!

Get docker-compose.production.yml - change if needed

Get the latest docker-compose.production.yml file - which is an addition to the base config file from above.

Changes regarding your local setup should be done in that file. This may be the configuration of volumes, host and port configurations.

The production file configures several volumes where your data is stored.

Create a .env file

Create a file with name ".env" (nothing before the "." in the file name) and the following content.

Change the values of MYSQL_USERNAME and MYSQL_PASSWORD, if needed/wanted.

Change the value of APP_HOST to the domain under which translate5 should run without leading protocol (so without https://).

The value of COMPOSE_FILE can stay as it is, except if you want also install translate5 Visual (see below in this case).

In case you want to install translate5 Visual, please jump to the instructions for the Visual.

CONTAINER_REGISTRY_BASE=translate5
MYSQL_USERNAME=translate5
MYSQL_PASSWORD=translate5
APP_HOST=t5docker.localdev
COMPOSE_FILE=docker-compose.yml:docker-compose.production.yml

When installing under Windows, the separator between the different yml files in COMPOSE_FILE must be ; (semicolon) instead of : (colon) in the above example.

Execute docker-compose up

Put all 2 (or in case of translate5 Visual usage 3) fetched docker-compose yml files and the generated ".env" file into the same directory and call:

docker compose up -d

# If the above command returns an error, try the following command
docker-compose up -d

Now everything needed for translate5 will be automatically downloaded, installed and configured for your needs.

Sit back, and watch!

Additional instructions for users of paid or non-public translate5 plug-ins

Visual / VisualReview

In order to use the Visual plug-in:

  • Get a docker hub token from MittagQI
  • Login to docker hub with by executing
    • docker login -u translate5

    • At the password prompt, enter the personal access token.

  • Download the docker-compose.visual.yml
  • Change in your ".env" file the value of COMPOSE_FILE to docker-compose.yml:docker-compose.visual.yml:docker-compose.production.yml
  • Open the docker-compose.production.yml and search for the following line:
    • # ENABLE ME IF USING Visual plugin

    • Uncomment the 4 lines below this line (remove the starting # from them)
  • Go to Execute docker-compose up and follow those intructions. After this paragraph is done, go to General steps for paid/private plug-ins and follow those steps. Then you are done.

General steps for paid/private plug-ins

In order to use paid or private customer specific plug-ins, follow the normal installation. If all is up and running request the installer package containing all private plugins from mittagqi. You will receive an URL pointing to the package.zip.

On your CMD execute the following:

docker-compose exec php bash
t5 status 
# now you should be in /var/www/translate5
wget URL_TO_YOUR.zip
./install-and-update.sh YOUR.zip
t5 service:autodiscovery -a

This steps will be improved in the near future, so that private plug-ins are registered via the config and pulled automatically.

Additional hints for experts regarding optional configuration steps

SSL Offloading

SSL Offloading to an external load balancer is possible, the load balancer must support / enable websockets.

  1. Configure Translate5 as it would have SSL (server.protocol = https://) and run autodiscovery to configure messagebus correctly.
  2. In the proxy container of translate5 modify /etc/nginx/conf.d/server.conf and duplicate the /ws/ location block with /wss/.

The last step is needed since the /wss/ location block is normally in the ssl-server.conf which is not used since SSL is offloaded.

Common problems

If the pdfconverter container is always dying immediately after start-up with message "[WARNING] The local web server is already running".

This happens mostly after stopping and starting the container.

The easiest solution is to stop, remove and recreate the container:

docker stop docker-pdfconverter-1
docker rm docker-pdfconverter-1
docker compose up -d pdfconverter


The whole error message of the pdfconverter container
docker-pdfconverter-1  |  [WARNING] The local web server is already running                              
docker-pdfconverter-1  |                                                                                 
docker-pdfconverter-1  | 
docker-pdfconverter-1  | Local Web Server
docker-pdfconverter-1  |     Listening on http://127.0.0.1:8086
docker-pdfconverter-1  |     The Web server is using PHP FPM 7.4.33 (from default version in $PATH)
docker-pdfconverter-1  | 
docker-pdfconverter-1  | Local Domains
docker-pdfconverter-1  | 
docker-pdfconverter-1  | Workers
docker-pdfconverter-1  |     No Workers
docker-pdfconverter-1  | 
docker-pdfconverter-1  | Environment Variables
docker-pdfconverter-1  |     None
  • No labels