Categories: Python Блог

Как загрузить python файл на сервер ukraine.com.ua

В прошлой статье я рассказывала как загрузить файл python.py на беспплатный сервер. Эта статья будет похожа – это пошаговая инструкция как загрузить python файл на сервер хостинга ukraine.com.ua. На этом сервере уже установлен Python и базовые библиотеки.
Я подробно расскажу все шаги как это делала я. Предполагается, что Вы уже зарегистрированы а авторизированы.

Как загрузить python файл на сервер через файловый менеджер.

  • Перейдите в файловый менеджер.
  • Создайте в корне вашего аккаунта /home/username/ папку Python: правая кнопка мыши – создать каталлог
  • В созданную папку Python загрузите проект с компьютера: просто перетащите папку с проектом. Обязательно создайте файл requirements.txt для последующей загрузки нужных библиотек.

SSH-доступ. Подключение и настройка.

  • Перейдите в раздел SSH-доступ. Сейчас все будем делать тут. Понадобится ввести много команд.
  • Скопируйте в отдельный файл для удобства
    • Команда SSH:
    • Пароль
  • Нажмите кнопку Подключится. Откроется консоль.
  • Введите команду SSH. Для этог скопируйте полностью всю строку и вставте: правая кнопка мыши – вставить. Нажмите Enter. При первом запуске нажмите yes. Нажмите Enter.
  • Далее скопируйте пароль: правая кнопка мыши – вставить. Пароль в консоли не отобразится. Нажмите Enter.
    Вы подключены

Создание виртуальной среды.

Перейдие в директорию Python:

cd Python

Установите интсрумент virtualenv – инструмент для создания виртуальной среды.

pip3.10 install --user virtualenv

Проверте, что вы находитесь в папке Python

pwd

Создайте виртуальную среду.

virtualenv --python=python3.10 myenv

Если все хорошо, перейдите к пункту активируйте виртуальную среду.
Но у меня выдало такую ошибку

-bash: virtualenv: command not found

Ошибка говорит о том, что команда virtualenv не найдена на сервере. Это может произойти, если virtualenv не был установлен правильно или его путь не был добавлен в переменную PATH. Попробуйте выполнить следующие действия:

Добавьте путь к virtualenv в PATH. Для этого выполните команду:

echo 'export PATH=$PATH:/home/username/.local/bin' >> ~/.bashrc

Замените username на имя вашего аккаунта на хостинге

Затем перезагрузите файл ~/.bashrc, чтобы изменения вступили в силу:

source ~/.bashrc

Попробуйте установить virtualenv еще раз, используя команду:

pip3.10 install --user virtualenv

После успешной установки попробуйте создать новую виртуальную среду с помощью команды:

virtualenv myenv

Активируйте виртульаную среду

source myenv/bin/activate

Установка зависимых библиотек

Напоминаю что у вас уже должен быть создан быть файл requirements.txt

Переходим в папку проекта (до этого мы работали в папке Python). Проект мы перенесли в эту папку в самом начале этой статьи.

cd project_folder

Загружаем файл с зависимостями

pip3.10 install -r requirements.txt

Мне еще отдельно понадобилось установить библиотеку lxml

pip3.10 install lxml

Запуск файла python на сервере.

Теперь все что осталось – это запустить проект. C помощью уже знакомой команды cd перейдите в папку, где находится файл запуска. В моем случае это папка проекта и переходить уже никуда не нужно. Введите команду, где main.py имя файла

python3 main.py

Программа должна начать работу. Это будет видно в консоле. Если будут ошибки – они также будут показаны в консоли.

Расписание задач (cron)

В моей программе было важно, чтобы они запускалась по расписанию 2 раза в день. Это можно сделать в разделе хостинга Расписание задач.
Перед тем как создать задачу, нужно создать специальный файл запуска. Создайте на своем компьютере файл с ращрешением sh, у меня это run_bot.sh. Содержимое файла должно быть следующим.

#!/bin/bash
cd /home/username/Python/project_folder # замените project_folder на папку проекта
source /home/username/Python/myenv/bin/activate # замените username 
python3 /home/username/Python/project_folder/main.py # замените username и project_folder

Этот файл Вы можете разместить в любой папке, но логично разместить его в папку проекта. Загрузите его через файл-менеджер.

Теперь можно создать задачу. В разделе Расписание задач нажмите “Добавить задачу“.
В поле Задача введите

/bin/sh /home/username/Python/project_folder/run_bot.sh

поменяйте в ссылке username и project_folder

Для моей задачи – “каждый день в 8 утра и в 20:00” нужно було внести следующие настройки
– Выбрать “Свой вариант”
– Выбрать “Час” и ввести: 8,20

Нажать сохранить.
Вот теперь все! Программа загружена, установлена и будет работать по расписанию.

Recent Posts

  • Excel

Как правильно открыть CSV с многострочными ячейками в Excel

Если при открытие csv файла с помощью excel У все поехали ячейки - это простой… Read More

% дней назад
  • Python

Загрузка проекта на Github и Автодеплой на сервер

Простые шаги как происходит Загрузка проекта на Github и Автодеплой на сервер Сделайте работу проще! Read More

% дней назад
  • Python
  • Полезная минутка

Миграция базы данных в проектах Python

Миграция базы данных - помогают с этим библиотеки SQLAlchemy и Alembic. Read More

% дней назад
  • Python

Команды Git – Шпаргалка по основным командам Git

Основные Команды Git, которые точно пригодятся. Сохрани себе шпаргалку Git Read More

% дней назад
  • Python

Установка PostgreSQL на сервер Ubuntu и подключение через pgAdmin

Установка PostgreSQL на сервер Read More

% дней назад
  • Полезная минутка

Как создать PrimaryKey для таблицы в PostgreSQL

Как создать PrimaryKey в талице базы данных SQL [РЕШЕНО] Ошибка relation tablename_id_seq doesn't exist Read More

% дней назад