Kalau punya script yang harus dijalankan oleh cron, sementara anda ga mau menginstall runtime nya (php, node, dll) karena ga mau “ngotorin” server.

Maksud dari one line command itu perintah yang cuma 1 baris saja, jadi ga ribet pake docker-compose file.

Saya ada tutorial menjalankan script node & php yang ingin dijalankan oleh cron setiap 1 menit, berikut caranya:

  1. Buat satu file baru hello.js, isikan dengan console.log("Hello World");. Lalu
  2. Jalankan
docker run -it --name cron-node -v /home/ipang/dockercron/:/usr/src/app/ --restart=always node:12-alpine sh -c "echo \"*/1 * * * * node /usr/src/app/hello-console.js\" | crontab - && crond -f -L /dev/stdout"
  1. Untuk aplikasi berbasis PHP. Buat satu file baru hello.php, isikan dengan <?php echo "hello pono"; ?>
  2. Jalankan
docker run -it --name code-php -v /home/ipang/dockercron/:/tmp/  --restart=always php:7.2-alpine sh  -c "echo \"*/1 * * * * php /tmp/info.php\" | crontab - && crond -f -L /dev/stdout"

Penjelasan command docker:

  1. -it --name code-php, beri nama container
  2. -v /home/ipang/dockercron/:/tmp/, mounting folder di host ke folder di container
  3. --rm php:7.2-alpine, gunakan image dari php:7.2-alpine
  4. -c "echo \"*/1 * * * * php /tmp/info.php\" | crontab - && crond -f -L /dev/stdout", perintah untuk menjalankan cron dan membuang outputnya ke /dev/stdout
Ngapain di Sensor sih&hellip;

Ngapain di Sensor sih…

referensi: running cron in docker the easy way