diff --git a/README.md b/README.md index 590f917..de901a4 100644 --- a/README.md +++ b/README.md @@ -34,4 +34,34 @@ for row in conn.execute('SELECT name, admin FROM users'): print(f'User: {row[0]}, Admin: {row[1]}') conn.close() " +``` + +https://github.com/ERIOS-project/vscode-jupyterhub/tree/main +``` + + Используем официальный образ за основу +FROM jupyter/scipy-notebook:latest + +# Устанавливаем code-server (VS Code в браузере) и прокси-расширения +USER root + +# 1. Устанавливаем code-server через официальный скрипт +RUN curl -fsSL https://code-server.dev/install.sh | sh + +# 2. Устанавливаем Python-пакеты для прокси (используем pip, т.к. это стандартный менеджер в образе) +# Они позволят Jupyter автоматически обнаружить и запустить code-server. +RUN pip install --no-cache-dir \ + jupyter-server-proxy \ + jupyter-vscode-proxy + +# (Опционально) Устанавливаем расширения для code-server. +# Важно: Это должно делаться от пользователя, под которым будет запускаться code-server (обычно jovyan), +# иначе расширения установятся в корневую директорию и будут недоступны. +# Поэтому мы временно переключаемся на пользователя, устанавливаем, и возвращаемся к root для завершения. +USER ${NB_UID} +RUN code-server --install-extension ms-python.python \ + && code-server --install-extension ms-toolsai.jupyter + +# Возвращаем пользователя jovyan, от которого работает Jupyter (на всякий случай, но он и так уже установлен) +USER ${NB_UID} ``` \ No newline at end of file