Repo2docker-action: MyBinder по-прежнему создает образ, а не вытягивает его

Созданный на 29 мар. 2021  ·  13Комментарии  ·  Источник: jupyterhub/repo2docker-action

Здравствуйте, спасибо за действительно приятное мероприятие!
Не уверен, ошибка ли это в действии или ошибка в его использовании.
Я успешно использовал это действие в прошлом, но в настоящее время я не могу заставить его работать должным образом с этим репо: https://github.com/ENCCS/veloxchem-workshop Рабочий процесс, включая действие, выполняется, и изображение загружается и общедоступно: https://github.com/orgs/ENCCS/packages/container/package/veloxchem-workshop Тем не менее, MyBinder.org всегда будет восстанавливать его с нуля, поэтому в моей настройке должно быть что-то не так.

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

Спасибо, что открыли свой первый выпуск в этом проекте! Подобное взаимодействие необходимо для проектов с открытым исходным кодом! : hugs:

Если вы еще этого не сделали, ознакомьтесь с Кодексом поведения Jupyter . Кроме того, попробуйте следовать шаблону задачи, так как он помогает другим членам сообщества вносить более эффективный вклад.
welcome
Вы можете познакомиться с другими джовианами , присоединившись к нашему форуму . Там также есть вступительная ветка, где вы можете зайти и поздороваться! :волна:

Добро пожаловать в сообщество Jupyter! : тада:

Я знаю, что Binder использует repo2docker, который будет сканировать ваш репозиторий на предмет файлов конфигурации, которые имеют следующий приоритет сборки

Просто взглянув на свое репо, кажется, что у вас есть другие файлы сборки, которые будут сигнализировать Binder о создании, а не использовать ваше изображение. Я не уверен, есть ли способ сказать Binder, что вы хотите создать Dockerfile в качестве первого приоритета. @choldgraf есть ли у вас идеи на этот

О, мои извинения за небольшое недоразумение.

Похоже, вы пытаетесь заставить MyBinder создать изображение, чтобы заставить его кэшировать изображение. Имейте в виду, что если в вашем репо есть какие-либо дополнительные коммиты, кеш становится недействительным. Кроме того, это зависит от емкости и правил кэширования MyBinder, которые могут со временем меняться.

Насколько я понимаю, это не должно быть связано с тем, чтобы ваше изображение было публично видимым. Я отметил друга, который разбирается в этом подробнее.

Если вы попытаетесь использовать mybinder.org два раза подряд для запуска записной книжки (не полагаясь на это действие), будет ли она каждый раз строиться?

Да - связыватель перестроит изображение на основе хэша фиксации, поэтому, если вы вообще меняете репо, новая сборка сработает, даже если вы не меняете файл конфигурации

Понятно. Тем не менее, я повторяю это действие при каждой фиксации. Итак, если я дождусь загрузки образа Docker перед запуском связующего, не должен ли я увидеть почти мгновенный запуск?

хммм - так что действие repo2docker просто создает изображение и помещает его в репозиторий, оно не делает ничего специально с Binder. Вам нужно будет настроить репозиторий Binder, который _ извлекает_ из того места, куда отправляет repo2docker-action , и оставить это статическое состояние, чтобы Binder не перестраивал его каждый раз.

Просто чтобы проверить, правильно ли я понял ваш последний комментарий:

  1. У меня может быть отдельная ветка / репо с environment.yml и перемещением действия в репозиторий пакетов.
  2. В основной ветке есть binder/Dockerfile , единственным содержимым которого является строка FROM repo/package:latest .

@choldgraf @robertodr на самом деле это действие не имеет возможности кэшировать сборки непосредственно на MyBinder.org, однако, если действие заканчивается созданием фиксации для вас, этот кеш будет немедленно аннулирован.

Я вижу, что ранее вы использовали неправильный флаг, и вы должны были использовать MYBINDERORG_CACHE https://github.com/ENCCS/veloxchem-workshop/commit/eeb4832cd8f8de1400a0a8fe16b113675dd630b2#diff -3f922dcd4cfbbd9cfcd5cfcd8cfcd8cfcd5cf2cd5cd5cd5cf2cd5cf6d5cd8

А теперь работает?

Это MYBINDERORG_CACHE или BINDER_CACHE вместе с MYBINDERORG_TAG ? Похоже, сейчас он работает, но, скорее всего, потому что я запускал ноутбуки пару раз подряд: facepalm:

@robertodr Я бы использовал этот пример из README, извините, имел в виду TAG, а не CACHE

image

@hamelsmu вау, этот экшен круче, чем я помнил 😄

Вау, да, теперь я чувствую себя довольно глупо ... Думаю, я пытался заставить его отправить изображение в GHCR и ожидал, что он будет автоматически использоваться на MyBinder.org. Затем попытался исправить это и перепутал названия опций: facepalm:

Кстати, попытка с BINDER_CACHE тоже сработала. Однако конкретное репо, с которым я работаю, использует LFS для хранения записных книжек, и они не будут извлечены должным образом.

Ок, отлично! Тогда я закрою этот выпуск. Для меня это также было хорошим напоминанием о том, что я не смотрел это репо в течение некоторого времени.

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

Смежные вопросы

hamelsmu picture hamelsmu  ·  6Комментарии

hamelsmu picture hamelsmu  ·  5Комментарии

choldgraf picture choldgraf  ·  8Комментарии

thienedits picture thienedits  ·  3Комментарии

MichalMichalak picture MichalMichalak  ·  3Комментарии