New experimental docker image #562
Pinned
jbtronics
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
New experimental docker image
There now is a new (still experimental) docker image of Part-DB: partdborg/part-db
Unlike the jbtronics/part-db1 image, which uses a classic apache and php-fpm setup, the new image is based on FrankenPHP a PHP application server based on Caddy.
The main advantage is that FrankenPHP supports a worker mode for PHP execution, where the initialized symfony kernel can be reused for multiple requests. On the classic PHP request model on apache, nginx, etc. the symfony kernel has to be loaded and reinitialized again on every request, which slow everything down.
So with the new FrankenPHP based docker image, everything should be much faster. First experiments showed something like 10 ms on the FrankenPHP image compared to 50 ms with the classical approach on pages with few database operations. So a pretty good improvement of request time.
Another advantage is that Caddy (the webserver FrankenPHP is based on) has very easy TLS handling, somethin which was not possible so easy with the old images. Based on the easy configuration Caddy can automatically create self-signed TLS certificates, use existing certificates or automatically request TLS certificates from a ACME provider like LetsEncrypt. That way setting up a secure access to Part-DB should become much easier.
It is planned that the new image should replace the old one in the future as the default image. However as it changes some things and especially the worker mode was never tested with Part-DB before, it is currently only experimental.
There are some changes to the current docker interface, so it is required to use some new docker compose configuration.
If you wanna try it out create a file named
compose.yaml
with the following content and modify it to your needs:This file might change in the future. You can start Part-DB then using
docker compose up
(notdocker-compose
)Also beware that this is based on the development versions of Part-DB and automatically updates the database. So this version may contain errors and you should regulary do database backups!
Beta Was this translation helpful? Give feedback.
All reactions