การตั้งเวลารัน Schedule script โดยใช้ Crontab
เข้าไปใน container โดยใช้ user root
sudo docker exec -it --user=root container_name /bin/bash
ติดตั้ง contrab ไว้ใน container โดยใช้คำสั่งดังนี้
apt-get update && apt-get -y install cron
สร้างไฟล์สำหรับตั้ง contrab โดยใช้คำสั่ง
crontab -l | { cat; echo "* * * * * /usr/local/bin/php artisan schedule:run"; } | crontab -
กรณีที่ต้องการแก้ไข contrab ให้ใช้คำสั่ง
contrab -e
เพิ่มคำสั่งรันสคริปลงไปดังตัวอย่าง
* * * * * /usr/local/bin/php artisan schedule:run
หรือกรณีที่ต้องการให้รันไฟล์ bash ก็สามารถกำหนดได้ดังนี้
* * * * * sh /var/www/script >> /var/log/cron.log 2>&1
คำสั่ง >> /var/log/cron.log จากตัวอย่างเป็นการสั่งให้เก็บ log ไปไว้ในไฟล์ชื่อ /var/log/cron.log
เปิดการใช้งาน service contrab โดยใช้คำสั่ง
service cron start