Размещение собственного сервера NuGet и ленты новостей для сборки артефактов с BaGet

1 min


BaGet - отличная альтернатива NuGetNuGet – это система управления пакетами, лежащая в основе платформы программирования .NET. Так же, как Ruby Gems или NPM Packages, вы можете привезти сторонние пакеты или сделать свои собственные. Публичный репозиторий размещен на http://nuget.org НО магия в том, что есть альтернативы! Есть много альтернативных серверов, а также альтернативных клиентов, таких как Paket,

Существует целая экосистема серверов NuGet. Вы можете получить отфильтрованные представления, аутентифицированные серверы, специальные репозитории с проверкой на вирусы, свои собственные серверы, на которых ваша система CI / CD (Continuous Integration / Continuous Deployment) может публиковать ежедневные (ежечасно?) Пакеты NuGet для использования другими командами.

В идеале в групповой ситуации одна команда должна создавать пакеты NuGet и публиковать их в частном фиде NuGet для использования другими командами.

Вот несколько классных серверов NuGet или просмотров на NuGet.org:

  • FuGet.org
    • FuGet это “Про просмотр пакета Nuget!” Создание удивительным Фрэнк А. Крюгер Из которых я большой поклонник – FuGet предлагает другой взгляд на библиотеку пакетов NuGet. NuGet – это репозиторий почти 150 000 библиотек с открытым исходным кодом, и NuGet Gallery делает достойную работу, позволяя просматривать все вокруг. Тем не мение, https://github.com/praeclarum/FuGetGallery альтернативный веб-интерфейс с гораздо большей глубиной
  • Artifactory
    • Artifactory – это, гм, фабрика по сборке артефактов всех видов, NuGet является лишь одним из них. Вы даже можете создать свой собственный внутренний кеш NuGet.org. Вы можете удалить или заблокировать доступ к пакетам, которые не нужны вашим разработчикам.
  • Галерея NuGet
    • Вы можете просто запустить свой СОБСТВЕННЫЙ экземпляр сайта NuGet.org! Это с открытым исходным кодом
  • NuGet.Server
  • Пакеты GitHub
    • GitHub имеет репозиторий пакетов с небольшим бесплатным уровнем, а также масштабируется до размера Enterprise, если вам нужно предложение «SaaS» (программное обеспечение как услуга)
  • Лазурные артефакты
    • Azure Artifacts также может предоставить настройку SaaS для ваших пакетов NuGet. Установите это и забудьте об этом. Простое место для вашей автоматической сборки, где можно отказаться от артефактов сборки.
  • MyGet
    • MyGet может содержать пакеты всех видов, включая NuGet. Они хорошо известны своей системой соответствия лицензии, поэтому вы можете убедиться, что ваши разработчики и компания используют только те проекты, которые поддерживает ваша организация.
  • Liget
    • Сервер NuGet с первым подходом к Linux
  • Багет (произносится багет)
    • Это одно из моих любимых. Это новый свежий сервер NuGet, полностью написанный на ASP.NET Core 3.1. Он кроссплатформенный, с открытым исходным кодом и работает в Azure, AWS, Google Cloud, за IIS или через Docker. Прекрасный! Это также отличный пример вдумчиво спроектированного кода, хорошей модели плагинов, хорошего разделения проблем и хорошего набора тестов. Если вы используете NuGet.Server сейчас, перейти к BaGet!

Давайте сосредоточимся на BaGet сейчас! Иди, дай им немного любви / звезд на GitHub!

Настройка кроссплатформенного персонального сервера NuGet с BaGet

BaGet – прекрасный маленький сервер. Пока что это поддерживает:

На мой взгляд, самая мощная функция изначально Прочитанное кеширование.

Это позволяет индексировать пакеты из вышестоящего источника. Ты можешь использовать сквозное кэширование чтобы:

  1. Ускорьте ваши сборки, если восстанавливаете из nuget.org медленные
  2. Включить восстановление пакетов в автономных сценариях

Это может быть хорошо для людей с низкой пропускной способностью или в удаленных сценариях. Поставьте BaGet перед своими разработчиками и эффективно создайте «крайний CDN» NuGet, который будет для вас закрытым.

Если вы знакомы с Docker, вы можете получить сервер BaGet NuGet за считанные минуты, Вы также можете использовать Azure, AWS или другое облако, чтобы масштабировать артефакты.

НОТА: Вы заметите, что документы для таких вещей, как “работает BaGet на Azure“не завершены. Это отличная возможность для ВАС помочь и принять участие в работе с открытым исходным кодом! Обратите внимание, что BaGet имеет ряд открытых проблем на своем GitHub *, и они пометили некоторые из них как”Хороший первый выпуск

Если вы хотите попробовать запустить BaGet без Docker, просто

  1. устанавливать .NET Core SDK
  2. Скачать и извлечь Последний выпуск BaGet
  3. Начать сервис с dotnet BaGet.dll
  4. Просматривать http://localhost:5000/ в вашем браузере

Это оно! Все подробности о начале работы с BaGet на своем GitHub, Иди подари им немного любви и звезд.


0 Comments

Ваш адрес email не будет опубликован. Обязательные поля помечены *