[Документация Yandex Cloud](../../index.md) > [Yandex DataSphere](../index.md) > Как организовать работу в DataSphere > Организовать сообщество для студентов

# Как организовать сообщество для студентов

Yandex DataSphere позволяет организовать удобное рабочее пространство для студентов. Для запуска курса преподавателю необходимо создать [сообщество](../concepts/community.md) в DataSphere, в котором будут доступны общие для всех студентов материалы: [Docker-образы](../concepts/docker.md) с предустановленными библиотеками, подключения к бакетам [Yandex Object Storage](../../storage/index.md) и подготовленные датасеты.

В руководстве описаны принципы организации учебного курса для студентов с помощью DataSphere.

1. [Создайте проекты](#create-projects).
1. [Подготовьте задания](#prepare-tasks).
1. [Проверьте выполненные задания](#check-tasks).

## Перед началом работы {#before-you-begin}

Перед началом работы нужно зарегистрироваться в Yandex Cloud, настроить [сообщество](../concepts/community.md) и привязать к нему [платежный аккаунт](../../billing/concepts/billing-account.md):
1. [На главной странице DataSphere](https://datasphere.yandex.cloud) нажмите **Попробовать бесплатно** и выберите аккаунт для входа — Яндекс ID или рабочий аккаунт в федерации (SSO).
1. Выберите [организацию Yandex Identity Hub](../../organization/index.md), в которой вы будете работать в Yandex Cloud.
1. [Создайте сообщество](../operations/community/create.md).
1. [Привяжите платежный аккаунт](../operations/community/link-ba.md) к сообществу DataSphere, в котором вы будете работать. Убедитесь, что у вас подключен платежный аккаунт, и он находится в [статусе](../../billing/concepts/billing-account-statuses.md) `ACTIVE` или `TRIAL_ACTIVE`. Если платежного аккаунта нет, создайте его в интерфейсе DataSphere.

## Создайте проекты {#create-projects}

Для каждого студента в сообществе необходимо создать [проект](../concepts/project.md), в котором он будет хранить собственные ресурсы и запускать среду разработки JupyterLab. В сообществе можно [ограничить](../operations/community/manage-community-config.md) использование [конфигураций](../concepts/configurations.md). Дополнительно для каждого проекта можно задать [ограничения на использование ресурсов](../operations/projects/restrictions.md), чтобы контролировать потребление учебных проектов.

Студенту необходимо [назначить роль](../security/index.md#grant-role) `Developer` в его проекте, чтобы предоставить возможность запускать код и пользоваться облачными ресурсами, но при этом запретить менять ограничения, установленные в проекте. Каждый студент внутри своего проекта будет запускать свою копию среды разработки, в которой можно работать в ноутбуке, хранить собственные данные и [секреты](../concepts/secrets.md).

Для организации общения внутри сообщества можно [добавить ссылку на канал в Telegram или Slack](../operations/community/link-channel.md).

Процесс создания сообщества и проектов, настройки ограничений и предоставления доступов можно автоматизировать с помощью [API DataSphere](../api-ref/overview.md). Пример такого решения описан в [руководстве по автоматизации настройки проектов](automation-community-settings.md).

## Подготовьте задания {#prepare-tasks}

Преподаватель может создать собственный проект в сообществе, чтобы подготовить в нем типовой ноутбук с заданиями. Ноутбук необходимо выложить в репозиторий GitHub и поделиться ссылкой на него со студентами. Студенты должны [клонировать репозиторий GitHub](../operations/projects/work-with-git.md#clone-public) в проект. При появлении нового задания студенту достаточно будет [получить из репозитория изменения](../operations/projects/work-with-git.md#pull).

{% note info %}

Происходящее в проекте видно только участникам проекта и пользователям сообщества с ролями `Admin` и `Editor`. Добавить участника в проект может только участник с ролью `Admin` в проекте или сообществе.

{% endnote %}

### Поделитесь данными для заданий {#share-data}

Данными для задания преподаватель может поделиться двумя способами:

1. **С помощью ресурса [датасет](../concepts/dataset.md)**:
    * Загрузить в свой проект необходимые данные и [создать из них Dataset](../operations/data/dataset.md).
    * [Поделиться датасетом с сообществом](../operations/data/dataset.md#share).
1. **С помощью [бакета](../../storage/concepts/bucket.md)**:
    * [Создать бакет Object Storage](../../storage/operations/buckets/create.md) и загрузить в него данные.
    * [Настроить коннектор S3](../operations/data/s3-connectors.md) в DataSphere.
    * [Поделиться коннектором в сообществе](../operations/data/s3-connectors.md#share).

После этого студенты смогут добавить коннектор в свой проект и подключиться к бакету Object Storage.

## Проверьте выполненные задания {#check-tasks}

Для проверки заданий преподаватель может выбрать один из двух возможных подходов:

1. Студент загружает готовый ноутбук обратно в репозиторий, а преподаватель [получает из репозитория изменения](../operations/projects/work-with-git.md#pull).
1. Преподаватель является участником каждого из проектов студентов с ролью `datasphere.communities.admin`. Он может заходить в любой проект и проверять задание там.