134 lines
4.4 KiB
ReStructuredText
134 lines
4.4 KiB
ReStructuredText
:navigation-title: Cron Job Set up
|
||
|
||
.. include:: /Includes.rst.txt
|
||
.. _cron-job:
|
||
|
||
==================================================
|
||
Setting up the cron job to run the scheduler tasks
|
||
==================================================
|
||
|
||
Tasks registered with the Scheduler can be run manually from the backend
|
||
module. However this is of limited use. To really benefit from the
|
||
Scheduler, it must be set up on the server to run regularly. The
|
||
following chapters describe how to set this up on Unix or Unix-like
|
||
system (including Mac OS X) and on Windows.
|
||
|
||
.. _frequency:
|
||
|
||
Choosing a frequency
|
||
====================
|
||
|
||
Whatever system the Scheduler will run on, the first step is to define
|
||
the frequency at which it should run. The Scheduler script should set
|
||
up to run pretty often, but not unnecessarily often either. The
|
||
frequency should be that of the most often running task or some
|
||
frequency that fits all tasks.
|
||
|
||
For example, if you have some tasks running every quarter of an hour
|
||
and some others running every hour, it is useless to have the
|
||
Scheduler run every 5 minutes. On the other hand, if you have tasks
|
||
scheduled to run every 10 minutes and others every 15 minutes, you
|
||
will want to run the Scheduler every 5 minutes. Indeed, if you run it
|
||
only at 10-minute intervals, it will run – assuming it is 8 o'clock –
|
||
at 08:10, 08:20, 08:30, etc. So the tasks that should run at 08:15
|
||
will actually run 5 minutes late.
|
||
|
||
|
||
.. _unix-mac:
|
||
|
||
On Unix and Mac OS X
|
||
====================
|
||
|
||
On such systems the Scheduler must be set up as a cron job. There are
|
||
several ways to achieve this, although the simplest is probably to add
|
||
it to some user's crontab. Edit that user's crontab using:
|
||
|
||
.. code-block:: bash
|
||
|
||
crontab -e
|
||
|
||
and add a line like
|
||
|
||
.. tabs::
|
||
|
||
.. group-tab:: Composer-based installation
|
||
|
||
.. code-block:: bash
|
||
|
||
*/15 * * * * /usr/local/bin/php /home/user/www/vendor/bin/typo3 scheduler:run
|
||
|
||
.. group-tab:: Legacy installation
|
||
|
||
.. code-block:: bash
|
||
|
||
*/15 * * * * /usr/local/bin/php /home/user/www/typo3/sysext/core/bin/typo3 scheduler:run
|
||
|
||
Save the modified crontab. Obviously, the paths have to be adapted to
|
||
your system. The above command will call up the Scheduler every 15
|
||
minutes.
|
||
|
||
.. seealso::
|
||
|
||
See :ref:`scheduler-shell-script` for more information about
|
||
calling the scheduler from the command line.
|
||
|
||
If you are editing system crontabs (for example :file:`/etc/crontab`
|
||
and :file:`/etc/cron.d/*` ), there will be one additional parameter
|
||
to enter, i.e. the user with which the job should run. Example:
|
||
|
||
.. tabs::
|
||
|
||
.. group-tab:: Composer-based installation
|
||
|
||
.. code-block:: bash
|
||
|
||
*/15 * * * * www /usr/local/bin/php /home/user/www/vendor/bin/typo3 scheduler:run
|
||
|
||
.. group-tab:: Classic installation
|
||
|
||
.. code-block:: bash
|
||
|
||
*/15 * * * * www /usr/local/bin/php /home/user/www/typo3/sysext/core/bin/typo3 scheduler:run
|
||
|
||
This will run the job as user "www".
|
||
|
||
If you are not familiar with cron syntax, refer to some Unix
|
||
administration book or start with the Wikipedia page about it
|
||
(https://en.wikipedia.org/wiki/Cron).
|
||
|
||
.. _windows:
|
||
|
||
On Windows
|
||
==========
|
||
|
||
On Windows, cron jobs are called "Scheduled tasks" and run with the
|
||
:file:`schtasks` utility. :file:`SchTasks.exe` performs operations
|
||
similar to those provided by Scheduled Tasks in the Control Panel. You
|
||
can use either tool to create, delete, configure, or simply display
|
||
scheduled tasks.
|
||
|
||
Assuming you want to run the TYPO3 Scheduler every 15 minutes, use the
|
||
following command line to create a new task:
|
||
|
||
.. tabs::
|
||
|
||
.. group-tab:: Composer-based installation
|
||
|
||
.. code-block:: bash
|
||
|
||
schtasks /create /sc minute /mo 15 /tn "T3scheduler" /tr "c:\winstaller\php\php.exe c:\winstaller\htdocs\quickstart\vendor\bin\typo3 scheduler:run"
|
||
|
||
.. group-tab:: Classic installation
|
||
|
||
.. code-block:: bash
|
||
|
||
schtasks /create /sc minute /mo 15 /tn "T3scheduler" /tr "c:\winstaller\php\php.exe c:\winstaller\htdocs\quickstart\typo3/sysext/core/bin/typo3 scheduler:run"
|
||
|
||
At task creation you will be prompted to give a password or you can
|
||
use the :code:`/u` and :code:`/p` switches to provide user and
|
||
password information. Note that the user must be a member of the
|
||
Administrators group on the computer where the command will run.
|
||
|
||
The full reference for :file:`schtasks` is available at:
|
||
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks
|