12 bay homelab NAS – JMCD 12S4. Upgrading my Truenas Scale server. Optionally rack mountable

jmcd 12S4 12 bay nas case

High density compact 12 bay nas server for homelab, (optionally rackmountable, but probably best for no-rack setups) – JMCD 12S4 seems to be a great case for those looking to expand their existing homelab NAS server capacity or setup a new high-capacity NAS server/ disk array for either standalone or rackmountable situations. Hello there my … Read more

vite.js to precompress your .js and .css bundles in brotli and gzip format

vite.js to precompress your .js and .css bundles in brotli and gzip format

Vite.js bills itself as a “Next Generation Frontend Tooling”, in simpler words this is something to replace your webpack bundler with (for your next project) as most modern browsers suppport ESM which make bundling easier and faster. I’ve started using it for some of my projects and could not find an example for brotli and … Read more

Benchmarking of PHP application with php-fpm vs swoole/openswoole

Benchmarking of PHP application with php-fpm vs swoole/openswoole

How realistic is this benchmark? Before people start pulling out pitchforks from their basements (sheds, whatever) – I do realize this is a rather NOT a realistic test-case scenario. In the real life scenario, it is somewhat unlikely your API will just be serving some static json responses without any io calls. And even a … Read more

AWS ECS volume permission denied when using non-root Dockerfile

AWS ECS volume permission denied when using non-root Dockerfile

Using the Least Privileged User (and definitely a non-root user) is one of the best practices when working with Dockerfiles. By default, when a Dockerfile does not specify a user, it uses a root user which is almost never a good idea. However, sometimes using non-root users may introduce some hard-to-understand and resolve problems. If you are trying to use AWS ECS fargate non-root containers that have to write to the bind mounts and are seeing the “PermissionError: [Errno 13] Permission denied” error – this is how to solve it.