Repo2docker-action: Repo2Docker: пример мозгового штурма

Созданный на 18 мая 2020  ·  5Комментарии  ·  Источник: jupyterhub/repo2docker-action

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

  1. Сделайте так, чтобы действия оставались комментариями с помощью значка Binder автоматически в PR или с помощью команды chatops, соответствующей ветви, указанной в PR. Это сделано для того, чтобы рецензенты могли получить легкий доступ к живому блокноту для просмотра блокнотов в PR одним щелчком мыши. Будет выглядеть примерно так:

    image

  2. Автоматически запускать записные книжки при открытии PR или с помощью команды chatops на градиенте пространства бумаги .

    Примерный набросок выглядит примерно так

    ...
      - name: build-environment
        id: repo2docker
        uses: machine-learning-apps/repo2docker-action
        with:
            DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
            DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
            IMAGE_NAME: "hamelsmu/repo2docker-test"
    
      - name: paperspace-deploy
        id: paperspace
        run: |
            pip install gradient
            gradient apiKey ${PAPERSPACE_TOKEN}
            gradient jobs create --container ${IMAGE_NAME} --projectId ${PAPERSPACE_PROJECT_ID} --machineType K80 --ports 8888:8888
        env:
            PAPERSPACE_TOKEN: ${{ secrets.PAPERSPACE_TOKEN }}
            PAPERSPACE_PROJECT_ID: ${{ secrets.PAPERSPACE_PROJECT_ID }}
            IMAGE_NAME: ${{ steps.repo2docker.outputs.IMAGE_SHA_NAME }}
    
    
  3. Запустите образы repo2docker в основных облаках: GCP, AWS, Azure и, возможно, FloydHub

    Примерный набросок выглядит так на GCP - Google Cloud Functions

    ....
      - uses: exelban/gcloud<strong i="21">@master</strong>
        env:
            PROJECT_ID: ${{ secrets.GOOGLE_PROJECT_ID }}
            APPLICATION_CREDENTIALS: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
            IMAGE_NAME: ${{ steps.repo2docker.outputs.IMAGE_SHA_NAME }}
        with:
            args: --quiet beta run deploy notebook-serve-action --allow-unauthenticated --platform managed --region us-west1 --image $IMAGE_NAME
    
  4. Примеры с кодовыми пространствами


Другие идеи: подлежит уточнению

@betatim , @willingc @neovintage есть еще идеи? Возможности настолько захватывающие, я буду рад вашим идеям и мыслям!

help wanted

Самый полезный комментарий

В ответ на предложение

Есть ли у кого-нибудь любимые облачные провайдеры или услуги хостинга для ноутбуков из контейнеров, кроме Binder? Самые удобные из них, которые я смог найти, - это Paperspace и Google Cloud, упомянутые выше.

Существуют и другие несерьезные парадигмы, но они не всегда подходят для ноутбуков. Было бы здорово, если бы основные облака предлагали Binder-as-a-service для частных случаев использования.

Что касается идеи плагина, это очень естественно для работы Actions, и люди могут просто складывать действия вместе, чтобы достичь желаемого рабочего процесса. Я мог бы сделать функцию «развернуть контейнер записной книжки в X» отдельным действием, чтобы все оставалось модульным ...

Все 5 Комментарий

Команда datasette publish [ код ] создает и отправляет контейнер, содержащий экземпляр

Было бы полезно предоставить что-то подобное в этом действии или, возможно, как часть repo2docker [@betatim].

Мне также интересно, можно ли извлечь этот рецепт публикации в другое действие Github или в контексте repo2docker, пакет стиля плагина, который позволит использовать его в других проектах? (Например, в наборе данных уже используется модель подключаемого модуля. (Вот начальные примечания @simonw по определению модели подключаемого модуля).

В ответ на предложение

Есть ли у кого-нибудь любимые облачные провайдеры или услуги хостинга для ноутбуков из контейнеров, кроме Binder? Самые удобные из них, которые я смог найти, - это Paperspace и Google Cloud, упомянутые выше.

Существуют и другие несерьезные парадигмы, но они не всегда подходят для ноутбуков. Было бы здорово, если бы основные облака предлагали Binder-as-a-service для частных случаев использования.

Что касается идеи плагина, это очень естественно для работы Actions, и люди могут просто складывать действия вместе, чтобы достичь желаемого рабочего процесса. Я мог бы сделать функцию «развернуть контейнер записной книжки в X» отдельным действием, чтобы все оставалось модульным ...

@hamelsmu Не корпоративное приложение, но было бы здорово предложить что-то подобное, интегрированное с GitHub classroom. Одним из важных вариантов использования переплетного устройства является проведение небольших семинаров / встреч / учебных пособий с использованием записных книжек.

это было бы так круто! В JupyterLab на самом деле есть небольшой бот, который добавляет ссылки Binder в их PR, возможно, стоит спросить их, как это работает, например: https://github.com/jupyterlab/jupyterlab/pull/8410#issuecomment -626757346

@choldgraf У меня уже есть что-то для этого, что работает в этом репо, но я посмотрю, есть ли там дополнительные идеи!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги