linux定時任務--定時重啟docker容器


Linux添加crontab定時任務

首先根據網頁提供資料,crontab分為兩類,系統crontab,用戶crontab。

系統crontab可以使不同的用戶crontab任務都放到/etc/crontab文件中指定。而用戶crontab僅允許當前用戶調用crontab -e命令來編輯自己的任務。
crontab具體使用以及語法:

crontab的一些基本命令

systemctl start crond.service          啟動服務

systemctl stop crond.service          停止服務

systemctl restart crond.service        重啟服務

systemctl reload crond.service        重載配置文件

systemctl status crond.service        查看狀態

crontab -l       顯示crontab文件(顯示已設置的定時任務)

crontab -e      編輯crontab文件(編輯定時任務)

crontab -r       刪除crontab文件(刪除定時任務)

crontab -ir      刪除crontab文件提醒用戶(刪除定時任務)

接下來進入正題使用定時器重啟容器,無需人工操作:

首先編寫腳本文件 restart.sh

1、我們將腳本文件放入/home/zhaojf/restart文件底下

cd /home/zhaojf/restart

touch restart.sh

vim restart.sh

這樣就能進入到腳本文件進行編輯操作

在腳本里放入重啟命令行即可,腳本文件如下:

#! /bin/bash
echo "重啟Docker容器名稱為:devicemanagement_0420">>/home/zhaojf/restart/restart.log
docker restart devicemanagement_0420
echo "重啟命令的執行狀態:"$?>>/home/zhaojf/restart/restart.log
if [ $? -eq 0 ]; then
    echo "執行成功!">> /home/zhaojf/restart/restart.log
else
    echo "執行失敗!">> /home/zhaojf/restart/restart.log
    exit
fi
echo "重啟Docker容器:devicemanagement_0420完畢!輸出日志在/home/zhaojf/restart/restart.log中">> /home/zhaojf/restart/restart.log

腳本編輯完成,點擊esc,不可編輯狀態,在按回車加冒號,輸入wq!退出編輯

2、編輯完成后,給予restart.sh文件執行權限

chmod u+x restart.sh

接下來只要將腳本加入定時任務里即可

3、編輯crontab文件加入定時任務

crontab -e

4、在crontab加入定時任務

表示每1分鍾執行一次重啟腳本

*/1 * * * * /home/zhaojf/restart/restart.sh

 

 */1 * * * * 表示每分鍾執行一次    /home/zhaojf/restart/restart.sh代表腳本路徑

時間規格可根據自行去查看格則表,這里我就不多做說明了

5、重載crontab配置文件

systemctl reload crond.service

6、可利用命令行crontab -l 查看定時任務

 

 這就是我們剛剛添加restart定時任務。

7、在輸出日志中查看定時任務的執行情況

vim restart.log

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM