我想在 Amazon Lightsail 实例上设置定期作业,但找不到任何相关信息 - 仅适用于 Amazon EC2。
是否可以在 lightsail 实例上发布 cron 作业,还是需要更改为 EC2?
我想在 Amazon Lightsail 实例上设置定期作业,但找不到任何相关信息 - 仅适用于 Amazon EC2。
是否可以在 lightsail 实例上发布 cron 作业,还是需要更改为 EC2?
在 8 小时后回答我自己的问题:可以在 Amazon Lightsail 实例上发布 cron 作业
这是一个运行 PHP 脚本的工作示例:
在 /home/bitnami/ 中创建一个名为“projects”的文件夹,并创建一个名为 Hello World 的简单 .php 文件:
<?php print("Hello World"); ?>
使用命令crontab -e
访问文档,您可以在其中添加将成为您计划的 cron 作业的行。
在文档中添加两行并添加一个新行:
PATH=/usr/bin:/bin:/opt/bitnami/php/bin:
* * * * * php -f /home/bitnami/projects/HelloWorld.php > /home/bitnami/projects/Out.put
第 1行将 php 添加到 cron 路径(Cron 看到的路径与环境变量中给出的路径不同。键入:env 并在控制台中按回车键)。要查看为 cron 提供了哪些环境变量,请将第 2 行替换为:* * * * * env > /tmp/env.output
并查看文件。第 2 行是 cron 计划。星号表示:每小时、每天、每月、每年的每一分钟都执行此操作。在 Google 上搜索这个 :) 并将输出到一个名为Out.put
.
等待 1 分钟,看到它Out.put
已经被创建并包含了Hello World的魔法词
如果您遇到 cron 作业无法正常工作的问题,请查看此故障排除指南:https ://stackoverflow.com/tags/cron/info
希望这可以帮助。如果没有,请在投票前发表评论!
如果您使用的是 node.js,您可以通过在您的 crontab 中添加几行来做到这一点。首先,打开crontab
crontab -e
在文件末尾添加这三行。我假设你一直在使用。
PATH=/usr/bin:/bin:/opt/bitnami/nodejs/bin:
@reboot cd /home/bitnami/**THISISYOURFOLDER** && /opt/bitnami/nodejs/bin/forever **NAMEOFYOURAPP.JS**
0 1 * * * sudo reboot
这将在系统重新启动时运行您在THISISYOURFOLDER中的应用程序。此外,我使用此设置将其设置为每天凌晨 1 点重新启动。
要对此进行测试,您可以使用
* * * * * cd /home/bitnami/**THISISYOURFOLDER** && touch myfile.txt
在你的 crontab 中。这需要在一分钟后在您的目标文件夹中创建 myfile.txt。如果不是,您需要更改路径设置。之间也有区别
sudo crontab -e
crontab -e
在https://crontab.guru/查找时间设置