84 lines
3.3 KiB
Markdown
84 lines
3.3 KiB
Markdown
# jupyterhub
|
||
|
||
настройки для stellars-jupyterhub-ds
|
||
|
||
https://gitea.manturovo-it.ru/nchebrov/stellars-jupyterhub-ds
|
||
|
||
https://github.com/stellarshenson/stellars-jupyterhub-ds
|
||
|
||
Смена администратора
|
||
|
||
* Создать нового пользователя, к примеру `super`
|
||
|
||
* Назначить его админом с помощью следующих команд
|
||
|
||
```
|
||
docker exec -it stellars-jupyterhub-ds-jupyterhub python3 -c "
|
||
import sqlite3
|
||
conn = sqlite3.connect('/data/jupyterhub.sqlite')
|
||
cursor = conn.cursor()
|
||
cursor.execute('SELECT name, admin FROM users')
|
||
for row in cursor.fetchall():
|
||
print(f'User: {row[0]}, Admin: {row[1]}')
|
||
conn.close()
|
||
"
|
||
```
|
||
```
|
||
docker exec -it stellars-jupyterhub-ds-jupyterhub python3 -c "
|
||
import sqlite3
|
||
conn = sqlite3.connect('/data/jupyterhub.sqlite')
|
||
conn.execute(\"UPDATE users SET admin=1 WHERE name='super'\")
|
||
conn.commit()
|
||
print('Готово')
|
||
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
|
||
RUN pip install --upgrade jupyterlab
|
||
|
||
# Создаем директорию для конфигурации code-server с правильными правами
|
||
RUN mkdir -p /home/jovyan/.local/share/code-server \
|
||
&& chown -R jovyan:users /home/jovyan/.local
|
||
|
||
# Переключаемся на пользователя jovyan для установки расширений
|
||
USER jovyan
|
||
WORKDIR /home/jovyan
|
||
|
||
# Устанавливаем переменную окружения для указания директории данных code-server
|
||
ENV XDG_DATA_HOME=/home/jovyan/.local/share
|
||
|
||
# Устанавливаем расширения с явным указанием директории и дополнительными флагами
|
||
RUN code-server --install-extension ms-python.python --force \
|
||
&& code-server --install-extension ms-toolsai.jupyter --force \
|
||
&& code-server --install-extension oderwat.indent-rainbow --force \
|
||
&& code-server --install-extension vscode-icons-team.vscode-icons --force \
|
||
&& code-server --install-extension donjayamanne.python-extension-pack --force \
|
||
&& code-server --install-extension MS-CEINTL.vscode-language-pack-ru --force \
|
||
&& code-server --install-extension sguerri.simple-hide-files --force \
|
||
&& code-server --install-extension lyuwenhan.zipper --force
|
||
|
||
# Проверяем установленные расширения
|
||
RUN code-server --list-extensions
|
||
|
||
# Возвращаем пользователя jovyan
|
||
USER jovyan
|
||
``` |