Nexus 3 - Czyli Twoje własne repozytoria!

O poradniku


Poradnik przedstawia instalację oprogramowania Sonatype Nexus 3 który umożliwia tworzenie własnych repozytoriów za pomocą paru kliknięć, jeżeli nie znasz się na temacie tworzenia repozytoriów za pomocą CLI ten poradnik jest idealnie dla Ciebie!

Krok 1

Przygotowania


Potrzebne będzie:

  • Najtańszy VPS z oferty LVLUP (2GB Ram) lub lepszy
  • System: Ubuntu 18.04/20.04, Debian 9/10, RHEL 7/8, CentOS 7/8

Krok 2

Instalacja wymaganych pakietów


Instalacja Javy w wersji 8 która jest wymagana do uruchomienia Nexus’a:

Ubuntu/Debian (9) :arrow_double_down:

sudo apt install openjdk-8-jre

Debian 10 :arrow_double_down:

sudo apt install apt-transport-https ca-certificates wget dirmngr gnupg software-properties-common

wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -

sudo add-apt-repository --yes https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/

sudo apt-get update

sudo apt install adoptopenjdk-8-hotspot

Dzięki @KMatuszak za podpowiedź dot. Debian 10

CentOS/RHEL :arrow_double_down:

sudo dnf install java-1.8.0-openjdk.x86_64

Instalacja paczki wget wymaganej do pobrania Nexus’a bezpośrednio na nasz serwer:
Ubuntu/Debian :arrow_double_down:

sudo apt install wget

CentOS/RHEL :arrow_double_down:

sudo dnf install wget

Krok 3

Instalacja Nexus’a


Tworzymy pierw folder dla naszego nexus’a:

Ubuntu/Debian/CentOS/RHEL :arrow_double_down:

sudo mkdir -p /opt/nexus

Pobieramy pliki nexus’a:

sudo wget -O nexus.tar.gz https://download.sonatype.com/nexus/3/latest-unix.tar.gz

Gdy paczka z plikami zostanie pobrana rozpakowujemy ją:

sudo tar -xvf nexus.tar.gz

Po wypakowaniu przenosimy pliki do folderu:

sudo mv nexus3 /opt/nexus/nexus && sudo mv sonatype-work /opt/nexus/sonatype-work

Tworzymy użytkownika nexus na którym będzie działał nasz nexus który będzie uruchamiany przez systemd

sudo adduser nexus

Nadajemy uprawnienia użytkownikowi nexus do folderów by aplikacja mogła modyfikować w nich pliki:

sudo chown -R nexus:nexus /opt/nexus/nexus && sudo chown -R nexus:nexus /opt/nexus/sonatype-work

Gdy nadamy uprawnienia trzeba powiedzieć nexusowi, Hej! Stop :stop_sign: masz działać jako ten użytkownik.
Uruchamiamy edytor np. nano za pomocą:

sudo nano /opt/nexus/nexus/bin/nexus.rc

i następnie usuwamy komentarz przy run_as_user="nexus", następnie zapisując.


Krok 4

Dodanie usługi systemowej dla Nexusa


Tworzymy plik /etc/systemd/system/nexus.service za pomocą

sudo touch /etc/systemd/system/nexus.service

następnie otwieramy go za pomocą edytora np. nano

sudo nano /etc/systemd/system/nexus.service

I wrzucamy następującą zawartość:

[Unit]
Description=nexus service
After=network.target

[Service]
Type=forking
LimitNOFILE=65536
User=nexus
Group=nexus
ExecStart=/opt/nexus/nexus/bin/nexus start
ExecStop=/opt/nexus/nexus/bin/nexus stop
User=nexus
Restart=on-abort

[Install]
WantedBy=multi-user.target

i startujemy za pomocą

sudo systemctl start nexus

I naszego nexusa znajdziemy pod linkiem http://IPv4:8081
Domyślny login to admin
A hasło odnajdziesz w pliku /opt/nexus/sonatype-work/nexus3/admin.password wystarczy skopiować i wkleić w pole “Password”

Dziękuje, mam nadzieję że poradnik się spodobał. Jeżeli tak jest daj :heart: :slight_smile:

1 polubienie

a co jak mam lepszy?

a headless nie wystarczy? :wink:

można było to zrobić w jednej komendzie :woman_facepalming:

/home to katalog dla profili użytkowników a nie do trzymania jakichś tam folderów.

:question:
najpierw utworzyłeś katalog użytkownika a potem tworzysz tego użytkownika. po co? można było pominąć te całe chown tworząc po prostu najpierw użytkownika :woman_facepalming:

i znowu, po co? wystarczy utworzyć taki plik przy zapisie bezpośrednio w nano, komendę można całkowicie pominąć bez modyfikacji kolejnych.

warto wytłumaczyć za co jest to odpowiedzialne, co robi i jak działa.

warto poinformować o tym że można odczytać je łatwo na przykład przy pomocy komendy cat, mniej doświadczony użytkownik może niepotrzebnie marnować czas na odczytywanie tego przez sftp.


a tak w ogóle, pokazałeś instalację i nie napisałeś ani słowa o tym jak z tego korzystać :woman_facepalming:
1 polubienie

To po prostu go masz :woman_shrugging:

Dla pewności lepiej zainstalować całe JRE :wink:

Można było lecz po prostu tak jakoś wyszło :woman_shrugging:

Wszyscy głównie trzymają np. serwery itd w home dlatego ta lokalizacja.

Mogłem też tak, lecz jak jest obecnie to źle nie jest.

:woman_shrugging:

To plik który odpowiada za obsługę usługi na serwerze w tym wypadku nexus’a

Tak tu fakt, mój błąd.

Bo to poradnik instalacji nie korzystania, a panel jest na tyle łatwy że praktycznie większość użytkowników da radę.

Z całą pewnością nie wszyscy… :thinking:

1 polubienie

poradnik sugeruje że wymagany jest taki z 2GB ramu.

nie, skoro aplikacja nie korzysta z GUI to całe jest niepotrzebne.

ok, szkoda.

to że wszyscy tak robią to nie znaczy że trzeba proponować innym głupie nawyki.

jest kombinowanie bez sensu.

wiem, mniej doświadczony użytkownik może jednak się zastanawiać czy to nie spowoduje jakichś problemów.

nie zmienia to faktu że i tak warto pokazać chociaż podstawy.

1 polubienie

Przepraszam fakt większość *

Źle to ująłem poprawię

Może i fakt :sweat_smile: nie wiem ja zawsze całe instalowałem

W sumie fakt ale się starałem :sweat_smile:

To miał być temat na następne poradniki :+1:

Edit: @KMatuszak ścieżki poprawione na bardziej stosowne

1 polubienie

Btw, to nie zadziała na Debianie 10. Słabo tak pisać poradnik i nie testować go :worried:

1 polubienie

Kurna pod Debianem 10 nie sprawdziłem dzięki za informacje poprawię iż na serwerze przeważnie był Debian 9/Ubuntu więc myślałem że na 10 podobnie będzie. Przepraszam za błąd poprawiłem. W następnym poradniku postaram się by mniej ich było

Instrukcje niejasne, nie ma kroku trzeciego.

Kurka faktycznie nie widziałem :joy::joy::joy::joy: poprawione

1 polubienie