how add bot in Docker

This commit is contained in:
vasilytray 2025-03-12 16:06:38 +07:00
parent 794179a8e8
commit 8b18cc444a

View File

@ -103,7 +103,10 @@ docker-compose logs -f
#### Для обновления бота:
Внесите изменения в код
Внесите изменения в код или подтяните из GitHub изменения, например:
```sh
git pull --rebase git@github.com:vasilytray/quick_bot_tutorial.git
```
#### Пересоберите контейнер:
@ -168,4 +171,110 @@ docker-compose up -d --build
```sh
docker ps
```
## Актуализация бота с github
### 1. подключить проект на ВМ к git.
В директории /home/mybot/ инициализируем git
```sh
git init
```
В состав Git входит утилита git config, которая позволяет просматривать и настраивать параметры, контролирующие все аспекты работы Git, а также его внешний вид.
Чтобы посмотреть все установленные настройки и узнать где именно они заданы, используйте команду:
```sh
git config --list --show-origin
```
Настроим конкретный проект git под конкретного пользователя локально!:
```sh
git config --local user.name "John Doe"
git config --local user.email johndoe@example.com
```
Локальные настройки будут находиться в Файле config в каталоге Git (т. е. .git/config) репозитория.
Теперь необходимо добавить все наши существующие в дирректории файлы в систему git
```sh
git add *
```
Чтобы проконтролировать, что все файлы добавлены выведем их статус (у добавленных будет статус new file:)
```sh
git status
```
или выведем короткое отображение:
```sh
git status -s
```
при этом добавленные файлы будут иметь пометку 'A'
Останется только закоммитить изменения
```sh
git commit -m "first add"
```
Далее либо запушить на GitHub в новый репозиторий, либо если на GitHub есть версия данного проекта синхронизировать
с репозиторием на GitHub.
### 2. Подключеие проекта к GitHub
#### Настройка подключения к GitHub
Для работы с GitHub без необходимости постоянно вводить логин и пароль при синхронизации локального и удаленного репозитория (находящегося на GitHub) нужно выполнить еще одну важную операцию — добавления ssh-ключей на github.com
Сначала нужно сгенерировать ssh-ключи, а затем один из них (публичный) добавить в настройки GitHub.
```sh
# Создание ssh-ключей
ssh-keygen -t ed25519 -C "your_email@example.com"
# Дальше будет несколько вопросов. На все вопросы нужно нажимать Enter.
# Запуск агента ssh, который следит за ключами
eval "$(ssh-agent -s)"
# Добавления нового ssh-ключа в агент
ssh-add ~/.ssh/id_ed25519
```
Когда **ssh-ключи** созданы и добавлены в систему, можно приступать к интеграции с **GitHub**. Подробно эта процедура описана в документации.
В двух словах:
1. Выведите содержимое файла ~/.ssh/id_ed25519.pub и скопируйте его:
```sh
cat ~/.ssh/id_ed25519.pub
```
[Добавьте ssh-ключ в аккаунт GitHub.](https://github.com/settings/keys) При добавлении вас попросят назвать ключ. Напишите что-нибудь в стиле home.
Проверьте, что подключение работает
```sh
ssh -T git@github.com
Hi tirion! You've successfully authenticated, but GitHub does not provide shell access.
```
> Есть несколько способов подтянуть репозиторий:
> 1. в существующий проект можно подтянуть командой:
> ```git pull --rebase git@github.com:vasilytray/quick_bot_tutorial.git```
> возможно появятся коллизии с существующими в дирректории файлами.
> git предложит удалить файлы, вызывающие коллизии. (возможно необходимо добавить файли в git и закоммитить)
> 2. Можно клонировать репозиторий и работать с ним.
Клонируем репозиторий с github
```sh
git clone git@github.com:<ИМЯ НА ГИТХАБЕ>/mybot.git
```
Да добавляем наш файл с секретами ``.env ``в проект на ВМ иначе запустить не получиться.
далее запускаем контейнер с ботом как описано выше.
#### Обновление бота из репозитория GitHub
Подтянем изменения из github
```sh
git pull --rebase
```