You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 (not docker-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!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
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