-
Notifications
You must be signed in to change notification settings - Fork 0
Home
CsteerDevops course study project. Wiki-framework is a fillable database in wiki format, deployed using Docker containers. Can be interacted with using either Web UI or Telegram Bots. Currently is being deployed to nginx server.
Last validated changes in develop
branch.
Technologies:
- MongoDB
- Python 3.7 with framework Flask
- React
- Nginx
- Telegram API
- Docker-compose
Project schema can be found here.
Database document schema.json can be found here
Web UI is accessible through http://188.124.37.185
API documentation (swagger) through http://188.124.37.185:5000/api/wiki/doc
To run this project execute this commands:
curl -O https://raw.githubusercontent.com/CsteerDevops1/wiki-framework/develop/deploy.sh
chmod a+x deploy.sh
./deploy.sh project_dir
If you didn't have docker-compose early, you should logout
and login
in your system account to add your account in docker group.
Then you need to configure .env
files in project_name/telegramBots/initBot/.env
and
project_name/telegramBots/userBot/.env
. Or just leave them empty and configure later.
After that run deploy.sh
again.
More information about deployment procedure
You can check that the app is working. Try:
- http://localhost:5000/api/wiki/doc for API testing
- http://localhost:8080 for WEB UI testing
- https://t.me/cs_wiki_search_bot - Search Bot
- https://t.me/cs_wiki_media_bot - Bot for adding data
- https://t.me/cs_wiki_edit_bot - Edit Bot
All project divided into modules. Each module represents a service and contained in own folder.
List of services:
- Core Service
- WEB UI
-
Telegram Bots
3.1 CS Wiki Search Bot
3.2 CS Wiki Media Bot
3.3 CS Wiki Edit Bot
- Translator
Core service is API for interacting with database.
Powered by Nginx and React. Allow to get, add, edit and delete object in database.
CS Wiki Search Bot - that bot allows you to search information in database.
CS Wiki Media Bot - that bot allows you to add data, stored in database.
CS Wiki Edit Bot - that bot allows you to edit data, stored in database. You can use inline Wiki Search Bot to choose object from db.
Background name field translator. This use Yandex Translator for translating.