installation script and guide
This commit is contained in:
parent
5f73a2b159
commit
af3618e8d4
64
README.md
64
README.md
@ -43,3 +43,67 @@
|
|||||||
- Вопрос: файл на сервере, я работаю на ноутбуке - где логика?
|
- Вопрос: файл на сервере, я работаю на ноутбуке - где логика?
|
||||||
- Ответ: есть [Syncthing](https://syncthing.net), который позволит синхронизировать файл с задачми на сервере и на ноутбуке. И на смартфоне.
|
- Ответ: есть [Syncthing](https://syncthing.net), который позволит синхронизировать файл с задачми на сервере и на ноутбуке. И на смартфоне.
|
||||||
|
|
||||||
|
# Инструкция установки и настройки
|
||||||
|
|
||||||
|
## Что понадобится
|
||||||
|
|
||||||
|
В минимальной комплектации понадобится:
|
||||||
|
|
||||||
|
1. VPS - арендуйте где-нибудь сервер (не хостинг). Проверенные варианты: Mail.Ru Group, Yandex
|
||||||
|
2. git - установите на сервер
|
||||||
|
3. [Docker](https://docs.docker.com/engine/install/ubuntu/) - куда без него?
|
||||||
|
4. [docker-compose](https://docs.docker.com/compose/install/linux/) - с этим проще деплоить
|
||||||
|
|
||||||
|
## Как собрать
|
||||||
|
|
||||||
|
1. `git clone https://gitea.bvn13.me/bvn13/jedoist-client.git`
|
||||||
|
2. `bash prepare-install.sh`
|
||||||
|
|
||||||
|
## Настройка запуска
|
||||||
|
|
||||||
|
1. Настройка осуществляется установкой переменных окружения при старте
|
||||||
|
- TODO_PATH - каталог (локальный), где хранится файл с заданиями
|
||||||
|
- TODO_FILE - имя файла с заданиями
|
||||||
|
2. Формат файла с заданиями такой: это MarkDown с жесткой структурой
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
# ToDo
|
||||||
|
|
||||||
|
- [ ] task 1
|
||||||
|
- [ ] task 2
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
сервис при добавлении новой задачи ищет строку `# ToDo`, после этого отступает одну пустую строку и добавляет задачу в формате MarkDown checked action. Советую ознакомиться с [форматом MarkDown](https://www.graef.io/basic-markdown-syntax/), потому что полезно.
|
||||||
|
|
||||||
|
3. Третья важная переменная окружения
|
||||||
|
- TOKEN - это тот авторизационный токен, который будет необходимо сообщить боту JeDoIst при добавлении себе списка задач.
|
||||||
|
|
||||||
|
|
||||||
|
## Запуск
|
||||||
|
|
||||||
|
Запуск осуществляется стандартным путем, с помощью `docker-compose`:
|
||||||
|
|
||||||
|
```
|
||||||
|
> TODO_PATH=/path/to/dir \
|
||||||
|
TODO_FILE=file.md \
|
||||||
|
TOKEN=my-secret-token \
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
|
||||||
|
## Проверка статуса
|
||||||
|
|
||||||
|
```
|
||||||
|
> docker ps
|
||||||
|
```
|
||||||
|
|
||||||
|
Контейнер должен быть `alive` и не перегружаться.
|
||||||
|
|
||||||
|
## Как же настроить список задач в боте?
|
||||||
|
|
||||||
|
`/create_todo_list` - команда добавления списка задач
|
||||||
|
|
||||||
|
1. имя списка задач - необходимо для того, чтобы после введенной задачи (в диалоге бота в Телеграм) указать, в какой список добавить задачу
|
||||||
|
2. `callback URL` - это внешний адрес вашего запущенного сервиса (по этой инструкции). Если вы арендовали VPS, то добавьте в ее FireWall порт 8080 для настоящего сервиса, и укажите в диалоге бота адрес `http://YOUR_VPS_IP:8080/create-task`
|
||||||
|
3. токен авторизации - тот самый токен, который указан при запуске настоящего сервиса на вашем VPS
|
15
docker-compose.yaml-distribution
Normal file
15
docker-compose.yaml-distribution
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
version: '3.3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
|
||||||
|
bot:
|
||||||
|
build: ./
|
||||||
|
environment:
|
||||||
|
- TOKEN=${TOKEN}
|
||||||
|
- TODO_PATH=/mnt/todo
|
||||||
|
- TODO_FILE=${TODO_FILE}
|
||||||
|
volumes:
|
||||||
|
- ${TODO_PATH}:/mnt/todo
|
||||||
|
restart: on-failure
|
||||||
|
ports:
|
||||||
|
- 8080:8080
|
4
prepare-install.sh
Normal file
4
prepare-install.sh
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
rm docker-compose.yaml
|
||||||
|
mv docker-compose.yaml-distribution docker-compose.yaml
|
Loading…
Reference in New Issue
Block a user