Skip to content

rasulovdd/s3_upload_bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

s3_upload_bot

Описание

Бот для загрузки файлов на S3 + запись данных в 1С

Стек

Core: python 3, aiogram 2.x
Database: mysql
S3 client: Boto3

Установка

  1. Скачайте репозиторий

    git clone https://github.com/rasulovdd/s3_upload_bot.git && cd s3_upload_bot
  2. Устанавливаем виртуальное окружение

    apt install -y python3-venv
    python3 -m venv env
  3. Активируем её

    source env/bin/activate
  4. Скачиваем и устанавливаем нужные библиотеки

    pip install -r requirements.txt
  5. Изменить в скрипте mysql-setup.sh следующие параметры:

    Пользователь: bot_user Пароль: password1! База данных: s3_upload_bot

  6. Запустить скрипт mysql-setup.sh
    даем права

    chmod +x mysql-setup.sh

    запускаем скрипт

    /root/s3_upload_bot/mysql-setup.sh
  7. Создаем .env файл с вашими данными, можно создать из шаблона и просто поправить поля

    cp .env.sample .env
    nano .env
  8. Создаем .service файл для вашего бота sudo nano /etc/systemd/system/s3_upload_bot.service

    [Unit]
    Description='Service for s3_upload_bot'
    After=network.target
    
    [Service]
    Type=idle
    Restart=on-failure
    StartLimitBurst=2
    # Restart, but not more than once every 30s (for testing purposes)
    StartLimitInterval=120
    User=root
    ExecStart=/bin/bash -c 'cd ~/s3_upload_bot/ && source env/bin/activate && python3 app.py'
    
    [Install]
    WantedBy=multi-user.target
    
  9. Включаем сервис и запускаем

    systemctl enable s3_upload_bot.service
    systemctl start s3_upload_bot.service
  10. Бот готов к использованию

Дополнительно

Для регистрации в 1С, у пользователя сотрудника должна быть установлена роль "Вложения Данные По Ремонту Добавление"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •