Rose debug info
---------------

Запускаем Python-скрипт с помощью Cron на Linux

#Подготавливаем сервер и переносим на него проект

  1. Создаём или обновляем файл с зависимостями
pip freeze > requirements.txt
  1. Создаём папку для приложения на сервере
mkdir ikea
cd ikea
  1. Устанавливаем виртуальное окружение
virtualenv -p python3 venv

если модуль не установлен, устанавливаем

pip3 install virtualenv
  1. Копируем файлы в папку приложения. Папку со скриптом и requirements.txt
scp /mnt/c/Users/Дарья/YandexDisk/Python Projects/ikea/requirements.txt user@11.22.33.44:/home/lukin/projects/ikea/

Для копирования папки целиком указываем параметр -r

scp -r /mnt/c/Users/Дарья/YandexDisk/Python Projects/ikea/ikea user@11.22.33.44:/home/lukin/projects/ikea/

Если надо переименовать папку

mv староеимя новоеимя
  1. Активируем виртуальное окружение и устанавливаем зависимости
source venv/bin/activate
pip install -r requirements.txt

#Настраиваем расписание

  1. Открываем планировщик
crontab -e
  1. Задаём расписание. Расписание можно сгенерировать, например на cronmaker.com
0 */1 * * * cd /home/lukin/projects/ikea/ikea && /home/lukin/projects/ikea/venv/bin/python3 ikea_app.py

или

* * * * * /bin/bash -c 'source /home/lukin/projects/realty/venv/bin/activate;cd /home/lukin/projects/realty && python3 ikea_app.py'

#Как понять что Cron срабатывает?

tail /var/log/syslog # получаем "хвост", последние 10 строк лог-файла
Поделиться
Отправить
 105   2021   cron   crontab   VPS