diff --git a/src/Handler.php b/src/Handler.php
index 35988d7e779b1d2a8ec0e251ec203c3a36974bc7..6edf1e301a2bd1f6b527f226f94b48d85260a312 100644
--- a/src/Handler.php
+++ b/src/Handler.php
@@ -543,11 +543,11 @@ class Handler extends BaseHandler {
           // Ignoring this for now.
         }
       }
+      $activeTasks = [];
       foreach ($this->config->readValue('crontabs') ?? [] as $user => $tasks) {
         if (!is_array($tasks)) {
           continue;
         }
-        $activeTasks = [];
         foreach ($tasks as $name => $task) {
           $disabled = !empty($task['disabled']);
           $command = $task['command'];
@@ -607,25 +607,20 @@ class Handler extends BaseHandler {
           }
           if (!$disabled) {
             if (count(explode(' ', $task['schedule'])) === 5) {
-              // Add leading "*" for seconds.
-              $task['schedule'] = '* ' . $task['schedule'];
+              // Add leading "0" for seconds.
+              $task['schedule'] = '0 ' . $task['schedule'];
             }
             $activeTasks[] = [
               'name' => $task['name'],
               'schedule' => $task['schedule'],
               'command' => $command,
               'ping_url' => $ping_url,
+              'user' => $user,
             ];
           }
         }
-        if (empty($activeTasks)) {
-          $files[$user] = [
-            'dest' => $projectRoot . '/crontabs',
-            'delete' => TRUE,
-          ];
-        }
-        else {
-          $files[$user] = [
+        if (!empty($activeTasks)) {
+          $files['jobs.ini'] = [
             'source' => 'crontabs/template.twig',
             'dest' => $projectRoot . '/crontabs',
             'options' => $activeTasks,
diff --git a/templates/crontabs/template.twig b/templates/crontabs/template.twig
index a4dd9eea41f7b5eaa51de5043a81f4e89efd9b8f..5e66c156fb27368c0106b8f41cbb7b2a3cbae9b0 100644
--- a/templates/crontabs/template.twig
+++ b/templates/crontabs/template.twig
@@ -1,9 +1,10 @@
 {% for line in loopoptions|default([]) %}
 [job-exec "{{  line.name }}"]
 no-overlap = true
+tty = true
+user = {{ line.user }}
 schedule = {{ line.schedule }}
 container = {{ projectname }}-php-1
-command =  {{ line.command }}{% if line.ping_url %} && curl -fsS --retry 5 -o /dev/null {{ line.ping_url }}{% endif %}
-
+command = sh -c \"{{ line.command }}{% if line.ping_url %} && curl -fsS --retry 5 --retry-delay 9 -o /dev/null {{ line.ping_url }}{% endif %}\"
 
 {% endfor %}
diff --git a/templates/docker-compose.yml.twig b/templates/docker-compose.yml.twig
index aaae71ce719a7cd6aadf1e8e44544d3dff9b8f2d..eb8f9f565c262e5e1793eeb5f657324e56169ae7 100644
--- a/templates/docker-compose.yml.twig
+++ b/templates/docker-compose.yml.twig
@@ -117,7 +117,7 @@ services:
       - /etc/timezone:/etc/timezone:ro
       - /etc/localtime:/etc/localtime:ro
       - /var/run/docker.sock:/var/run/docker.sock:ro
-      - {{ projectroot }}/crontabs:/etc/ofelia/config.ini
+      - {{ projectroot }}/crontabs/jobs.ini:/etc/ofelia/config.ini
 {% endif %}
 
   {{ webserver.type }}: