...
On the host system docker and docker-compose must be installed.
A public IP and a hostname / domain pointing to that IP must be configured. If that is not given check the common problems below.
License agreement
The translate5 installation consists of several Docker images providing the needed software apart from translate5 itself.
Note |
---|
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. This also means, that you yourself have the responsibility, that you combine the different licenses and download the different software used by translate5 and use them together. You do this on your own risk and need to make sure, that this works for you from a legal perspective and warranty perspective. 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. |
...
In case you want to install translate5 Visual, please jump to the instructions for the Visual.
Code Block |
---|
CONTAINER_REGISTRY_BASE=translate5
MYSQL_USERNAME=translate5
MYSQL_PASSWORD=translate5
APP_HOST=t5docker.localdev
COMPOSE_FILE=docker-compose.yml:docker-compose.production.yml
|
...
Now everything needed for translate5 will be automatically downloaded, installed and configured for your needs.
Sit back, and watch!
Configure cron jobs (scheduled jobs)
In order that things are working properly in translate5 some regular jobs must be called. Since in the host system mostly a cron is installed, we suggest to add the specific calls to the hosts crontab:
Please adjust the docker container name - localadm-php-1 in the example below. To get the proper name call docker ps.
And adjust the path to the docker binary if needed.
The interval of 15 minutes for the periodical calls should be kept. The point of time for the daily call could be adjusted so that it does not interfer with backups or so.
Code Block |
---|
*/15 * * * * /usr/bin/docker exec localadm-php-1 t5 cron
30 23 * * * /usr/bin/docker exec localadm-php-1 t5 cron --daily |
Alternativ way: call via URL
Anchor | ||||
---|---|---|---|---|
|
...
- Do not follow the above "SSL Configuration in the delivered nginx proxy" instructions! Keep the ordinary HTTP setup!
Add in your docker-compose.production.yml file a new environment variable HTTPS=on to the php container
Code Block php: restart: unless-stopped volumes: - translate5-data:/var/www/translate5:cached # just start the apache, if no updates on restart are desired # DO THAT AFTER NOT BEFORE THE DEFAULT ENTRYPOINT WAS USED ONCE! # entrypoint: apache2-foreground environment: -HTTPS=on
This is needed in order that translate5 recognizes that the application is running under https.
Configure Translate5 as it would have SSL (runtimeOptions.server.protocol = https://) and run autodiscovery to configure messagebus correctly.
Jump into the php container and call the autoconfiguration:Code Block docker-compose exec php bash t5 config runtimeOptions.server.protocol = "https://" t5 service:auto -a -s frontendmessagebus
Common problems
DNS resolution in docker container to other docker containers fail
If you experience problems, that the used service names (like termtagger) are not correctly resolving to the correct IP, then follow
https://github.com/moby/moby/issues/41766#issuecomment-884111508
PDFConverter
If the pdfconverter container is always dying immediately after start-up with message "[WARNING] The local web server is already running".
...
Code Block | ||
---|---|---|
| ||
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 |
Use a local setup only
If you do not plan to make the installation public and you just want to evaluate translate5 locally, you have to do the following additional steps:
Code Block | ||||
---|---|---|---|---|
| ||||
services:
proxy:
ports:
- "127.0.0.1:80:80" # map
extra_hosts:
- ${APP_HOST}:127.0.0.1 |
Set APP_HOST in your .env file to localhost.
Or if you wanna use a different hostname pointing to 127.0.0.1, configure that in your /etc/hosts file first.