An application writing to storage/logs/app.log inside a container is writing to a layer that disappears with the container, and nothing collects it. decorate_workers_output is the setting that stops…
nginx defaults to a one megabyte request body and rejects anything larger with a 413 before PHP is involved, so every PHP upload setting in the world makes…
A named volume is initialised from the image, so it inherits ownership from whatever the image had. A bind mount is the host’s directory with the host’s ownership,…
A staging database restored from production contains real addresses, and a queue worker that runs on it sends real email to real customers. It happens to everybody once.…
Symfony 4 puts a .env file in the repository root and reads it through Dotenv, which is convenient locally and is not how the framework expects production to…
Seven services with the same logging configuration, the same restart policy and the same network means the same six lines seven times, and the one that gets missed…
A PHP deploy ships source and hopes the target has the right runtime and extensions. dotnet publish produces a directory whose contents are the application, and it can…
A machine with PHP 7.2 installing dependencies for a server running 7.1 resolves to packages the server cannot run, and the failure happens on deploy rather than on…