{"id":22317546,"url":"https://github.com/neshkeev/kafka-exercises","last_synced_at":"2025-07-27T09:09:39.520Z","repository":{"id":177091276,"uuid":"646206602","full_name":"neshkeev/kafka-exercises","owner":"neshkeev","description":null,"archived":false,"fork":false,"pushed_at":"2024-02-06T00:38:23.000Z","size":175,"stargazers_count":3,"open_issues_count":0,"forks_count":10,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-02-06T22:26:26.403Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neshkeev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-05-27T16:20:01.000Z","updated_at":"2023-11-17T12:50:04.000Z","dependencies_parsed_at":"2024-02-05T22:26:24.652Z","dependency_job_id":"96d78ee7-5f38-46d0-8483-9c5c2a050a09","html_url":"https://github.com/neshkeev/kafka-exercises","commit_stats":null,"previous_names":["neshkeev/kafka-exercises"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neshkeev%2Fkafka-exercises","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neshkeev%2Fkafka-exercises/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neshkeev%2Fkafka-exercises/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neshkeev%2Fkafka-exercises/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neshkeev","download_url":"https://codeload.github.com/neshkeev/kafka-exercises/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228012253,"owners_count":17855984,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-03T23:10:09.347Z","updated_at":"2024-12-03T23:10:10.089Z","avatar_url":"https://github.com/neshkeev.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Gitpod](https://img.shields.io/badge/Open%20in%20Gitpod-908a85?logo=gitpod)](https://gitpod.io/#https://github.com/neshkeev/kafka-exercises)\n\n# Практические задания по Apache Kafka\n\nЗадания представляют собой набор docker compose сервисов для демонстрации работы с Apache Kafka. Каждая ветка демонстрирует какой-то аспект работы с Apache Kafka. Обычно docker-compose конфигурация включает 4 сервиса:\n\n| Сервис | Описание | Доступные порты |\n|--------|----------|------------------|\n| `zookeeper` | Apache Zookeeper | 2181 |\n| `kafka` | Брокер Apache Kafka. В случае, если необходимо несколько брокеров, то будет добавляться суффикс `N`, где `N` номер брокера | 9092 |\n| `redpanda` | Web интерфейс для работы с Apache Kafka | [8080](http://localhost:8080) |\n| `manager` | Jupute Notebook с bash командами для демонстрации | [8888](http://localhost:8888) |\n\n# Быстрый старт\n\n1. Для старта необходимо запустить скрипт `./start`: `bash ./start`. Скрипт объединяет в себе:\n    - `docker compose pull` - загрузить все образы локально;\n    - `docker compose build` - запустить сборку. Для Apache Kafka настраивается ssh, поэтому необходимо выполнить сборку образа;\n    - `docker compose up` - запуск docker compose сервисов.\n1. Открыть Jupyter Notebook в браузере: [http://localhost:8888](http://localhost:8888);\n1. Выбрать файл с Jupter Notebook на панели слева: `work` =\u003e `work.ipynb`;\n1. Открыть web консоль redpanda: [http://localhost:8080](http://localhost:8080);\n1. Переход к следующему шагу можно осуществить при помощи скрипта `./next`: `bash next`. Скрипт выполнит следующие действия:\n    - остановит запущенные docker сервисы,\n    - зафиксирует внесенные изменения в виде коммита,\n    - переключится на следующую ветку.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneshkeev%2Fkafka-exercises","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneshkeev%2Fkafka-exercises","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneshkeev%2Fkafka-exercises/lists"}