Sonatype Nexus: как использовать Amazon S3 в качестве хранилища артефактов maven?


У меня есть задача изучить, как сделать нашу внутреннюю установку Nexus (установленную на CentOs/RHEL) для хранения артефактов в облачном хранилище Amazon S3 (или любом другом дешевом облачном хранилище).

До сих пор я нашел только одно решение - монтировать s3 как файловую систему, т. е. используя s3fs. Но я встречал несколько проблем с использованием s3fs (за пределами этой темы).

Может быть, кто-то уже преуспел в поиске решения подобной задачи, и мог бы поделиться своими знаниями? Или, может быть, кто-то был есть идеи получше?

Заранее благодарю.

3 10

3 ответа:

Edit: начиная с версии 3.12, S3 blobstore включен в nexus.

Sonatype имеет плагин с открытым исходным кодом, который делает это:

Https://github.com/sonatype/nexus-blobstore-s3

Вы компилируете его, помещаете в каталог nexus deploy, настраиваете свою учетную запись S3 и хорошо тестируете ее.

Nexus Sonatype не поддерживает использование S3 в качестве хранилища файловой системы.

Почему бы не использовать Nexus для управления вашим главным репозиторием и не использовать такой инструмент, как s3sync, чтобы отразить содержимое файла репозитория в S3? Было бы полезно предоставлять клиентам версионные релизы.

Начиная с версии 3.12, Nexus изначально поддерживает хранилище больших двоичных объектов S3: https://blog.sonatype.com/nexus-repository-3.12-support-for-s3-blob-stores