feat(ide): add browser VS Code for course notebooks

This commit is contained in:
ddadmin committed 2026-10-18 22:39:39 +02:00
1 parent bf3241124c
commit 7d451a7ce9
15 files changed
+430 -50

No files matched your search

+11 -11
View File
@@ -12,7 +12,7 @@
"На выходе ты должен:\n",
"\n",
"- понимать, что стенд уже поднят на хосте;\n",
"- подключиться к Spark-кластеру из Jupyter;\n",
"- подключиться к Spark-кластеру из ноутбука;\n",
"- выполнить базовый smoke test;\n",
"- сопоставить сервисы стенда с их ролями;\n",
"- знать первый маршрут диагностики через `docker compose ps`, логи и UI.\n"
@@ -27,13 +27,13 @@
"\n",
"Перед запуском этого ноутбука пройди шаги из `START_HERE.md`.\n",
"\n",
"Важно: `docker compose build`, `docker compose up -d`, `docker compose ps` и просмотр логов выполняются на хосте, а не внутри Jupyter.\n",
"Важно: `docker compose build`, `docker compose up -d`, `docker compose ps` и просмотр логов выполняются в терминале хоста; терминал браузерного VS Code работает внутри контейнера.\n",
"\n",
"Ожидаемое состояние перед началом:\n",
"\n",
"- контейнеры `spark-master`, `spark-worker-1`, `spark-worker-2`, `minio`, `postgres-iceberg`, `trino`, `jupyter` уже подняты;\n",
"- открываются `Spark UI`, `Trino UI`, `MinIO Console` и `JupyterLab`;\n",
"- ты работаешь в Jupyter внутри контейнера `jupyter`.\n"
"- контейнеры `spark-master`, `spark-worker-1`, `spark-worker-2`, `minio`, `postgres-iceberg`, `trino`, `jupyter`, `ide` уже подняты;\n",
"- открываются `Spark UI`, `Trino UI`, `MinIO Console` и браузерный VS Code;\n",
"- ты выбрал ядро Python `/usr/bin/python3` внутри контейнера `ide` (Select Kernel → Python Environments).\n"
]
},
{
@@ -49,7 +49,7 @@
"| `PostgreSQL` | `catalog`: хранит метаданные JDBC-каталога Iceberg |\n",
"| `Spark` | `compute`: выполняет PySpark и Spark SQL |\n",
"| `Trino` | `compute`: читает те же таблицы через общий каталог |\n",
"| `Jupyter` | Точка входа в учебные ноутбуки |\n",
"| `VS Code / JupyterLab` | Точка входа в учебные ноутбуки |\n",
"\n",
"В этом модуле мы не строим пайплайн и не создаём Iceberg-таблицы. Задача только одна: убедиться, что среда рабочая и понятная.\n"
]
@@ -120,7 +120,7 @@
"\n",
"Если тест проходит, это означает минимум следующее:\n",
"\n",
"- Jupyter может создать SparkSession;\n",
"- ядро ноутбука может создать SparkSession;\n",
"- Spark подключён к кластерному master;\n",
"- задание действительно выполняется, а не падает на первом действии.\n"
]
@@ -146,7 +146,7 @@
"\n",
"Сделай руками и проверь себя:\n",
"\n",
"1. Открой `Spark UI`, `Trino UI`, `MinIO Console` и `JupyterLab`.\n",
"1. Открой `Spark UI`, `Trino UI`, `MinIO Console` и браузерный VS Code.\n",
"2. Сопоставь каждый сервис с одной из ролей: `storage`, `catalog`, `compute`, `entrypoint`.\n",
"3. Объясни, почему этот smoke test не должен работать в `local[*]` режиме.\n",
"4. На хосте выполни `docker compose ps` и посмотри, какие контейнеры должны быть в состоянии `Up`.\n",
@@ -166,7 +166,7 @@
" \"PostgreSQL\": \"TODO\",\n",
" \"Spark\": \"TODO\",\n",
" \"Trino\": \"TODO\",\n",
" \"Jupyter\": \"TODO\",\n",
" \"IDE\": \"TODO\",\n",
"}\n",
"service_roles\n"
]
@@ -181,9 +181,9 @@
"К концу модуля ты должен уметь подтвердить:\n",
"\n",
"- стенд поднят и основные контейнеры живы;\n",
"- `Spark UI`, `MinIO Console`, `Trino UI` и `JupyterLab` открываются;\n",
"- `Spark UI`, `MinIO Console`, `Trino UI` и браузерный VS Code открываются;\n",
"- smoke test завершился успешно и вернул ожидаемый результат;\n",
"- ты понимаешь назначение `MinIO`, `PostgreSQL`, `Spark`, `Trino`, `Jupyter`;\n",
"- ты понимаешь назначение `MinIO`, `PostgreSQL`, `Spark`, `Trino` и IDE;\n",
"- ты знаешь, что первый маршрут диагностики начинается с `docker compose ps`, `docker compose logs -f <service>` и проверки UI.\n"
]
},