feat: Prepare Zemailnator for Dokploy deployment

- Add highly optimized Dockerfile with Nginx and PHP-FPM 8.4
- Add docker-compose.yml configured with Redis and MariaDB 10.11
- Implement entrypoint.sh and supervisord.conf for background workers
- Refactor legacy IMAP scripts into scheduled Artisan Commands
- Secure app by removing old routes with hardcoded basic auth credentials
- Configure email attachments to use Laravel Storage instead of insecure public/tmp
This commit is contained in:
idevakk
2026-02-28 23:17:39 +05:30
parent bf5b797cd8
commit c312ec3325
78 changed files with 750 additions and 360 deletions

View File

@@ -14,7 +14,7 @@ class ArrayHelper
$keys = explode('.', $key);
foreach ($keys as $segment) {
if (!isset($array[$segment])) {
if (! isset($array[$segment])) {
return null;
}
$array = $array[$segment];
@@ -32,7 +32,7 @@ class ArrayHelper
);
} catch (\JsonException $e) {
// Optional: Log the error
Log::error("JSON encode failed: " . $e->getMessage());
Log::error('JSON encode failed: '.$e->getMessage());
// Fallback: return empty object instead of crashing
return '{}';