anon95087592 | 2020-09-03 07:48:13 UTC | #1
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!
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
Instalacja wymaganych pakietów
Instalacja Javy w wersji 8 która jest wymagana do uruchomienia Nexus’a:
Ubuntu/Debian (9) :arrowdoubledown:
sudo apt install openjdk-8-jre
Debian 10 :arrowdoubledown:
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 :arrowdoubledown:
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 :arrowdoubledown:
sudo apt install wget
CentOS/RHEL :arrowdoubledown:
sudo dnf install wget
Instalacja Nexus’a
Tworzymy pierw folder dla naszego nexus’a:
Ubuntu/Debian/CentOS/RHEL :arrowdoubledown:
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.
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: :)
-------------------------
KMatuszak | 2020-09-02 20:10:40 UTC | #2
[quote="anon95087592, post:1, topic:15943"]
Najtańszy VPS z oferty LVLUP (2GB Ram)
[/quote]
a co jak mam lepszy?
[quote="anon95087592, post:1, topic:15943"]
`openjdk-8-jre`
[/quote]
a headless nie wystarczy? :wink:
[quote="anon95087592, post:1, topic:15943"]
`sudo apt install wget`
[/quote]
można było to zrobić w jednej komendzie :woman_facepalming:
[quote="anon95087592, post:1, topic:15943"]
`sudo mkdir -p /home/nexus`
[/quote]
/home to katalog dla profili użytkowników a nie do trzymania jakichś tam folderów.
[quote="anon95087592, post:1, topic:15943"]
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 /home/nexus/nexus && sudo chown -R nexus:nexus /home/nexus/sonatype-work
[/quote]
: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:
[quote="anon95087592, post:1, topic:15943"]
Tworzymy plik `/etc/systemd/system/nexus.service` za pomocą
sudo touch /etc/systemd/system/nexus.service
```
[/quote]
i znowu, po co? wystarczy utworzyć taki plik przy zapisie bezpośrednio w nano, komendę można całkowicie pominąć bez modyfikacji kolejnych.
[quote=”anon95087592, post:1, topic:15943”]
I wrzucamy następującą zawartość:
[/quote]
warto wytłumaczyć za co jest to odpowiedzialne, co robi i jak działa.
[quote=”anon95087592, post:1, topic:15943”]
A hasło odnajdziesz w pliku /home/nexus/sonatype-work/nexus3/admin.password
wystarczy skopiować
[/quote]
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:
anon95087592 | 2020-09-02 20:17:33 UTC | #3
[quote=”KMatuszak, post:2, topic:15943”]
a co jak mam lepszy?
[/quote]
To po prostu go masz :woman_shrugging:
[quote=”KMatuszak, post:2, topic:15943”]
a headless nie wystarczy? :wink:
[/quote]
Dla pewności lepiej zainstalować całe JRE ;)
[quote=”KMatuszak, post:2, topic:15943”]
można było to zrobić w jednej komendzie :womanfacepalming:
[/quote]
Można było lecz po prostu tak jakoś wyszło :womanshrugging:
[quote=”KMatuszak, post:2, topic:15943”]
/home to katalog dla profili użytkowników a nie do trzymania jakichś tam folderów.
[/quote]
Wszyscy głównie trzymają np. serwery itd w home dlatego ta lokalizacja.
[quote=”KMatuszak, post:2, topic:15943”]
: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:
[/quote]
Mogłem też tak, lecz jak jest obecnie to źle nie jest.
[quote=”KMatuszak, post:2, topic:15943”]
i znowu, po co? wystarczy utworzyć taki plik przy zapisie bezpośrednio w nano, komendę można całkowicie pominąć bez modyfikacji kolejnych.
[/quote]
:woman_shrugging:
[quote=”KMatuszak, post:2, topic:15943”]
warto wytłumaczyć za co jest to odpowiedzialne, co robi i jak działa.
[/quote]
To plik który odpowiada za obsługę usługi na serwerze w tym wypadku nexus’a
[quote=”KMatuszak, post:2, topic:15943”]
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.
[/quote]
Tak tu fakt, mój błąd.
[quote=”KMatuszak, post:2, topic:15943”]
a tak w ogóle, pokazałeś instalację i nie napisałeś ani słowa o tym jak z tego korzystać :woman_facepalming:
[/quote]
Bo to poradnik instalacji nie korzystania, a panel jest na tyle łatwy że praktycznie większość użytkowników da radę.
TheMultii | 2020-09-02 20:19:14 UTC | #4
[quote=”anon95087592, post:3, topic:15943”]
Wszyscy głównie trzymają np. serwery itd w home dlatego ta lokalizacja.
[/quote]
Z całą pewnością nie wszyscy… 🤔
KMatuszak | 2020-09-02 20:21:42 UTC | #5
[quote=”anon95087592, post:3, topic:15943”]
To po prostu go masz :woman_shrugging:
[/quote]
poradnik sugeruje że wymagany jest taki z 2GB ramu.
[quote=”anon95087592, post:3, topic:15943”]
Dla pewności lepiej zainstalować całe JRE :wink:
[/quote]
nie, skoro aplikacja nie korzysta z GUI to całe jest niepotrzebne.
[quote=”anon95087592, post:3, topic:15943”]
Można było lecz po prostu tak jakoś wyszło :woman_shrugging:
[/quote]
ok, szkoda.
[quote=”anon95087592, post:3, topic:15943”]
Wszyscy głównie trzymają np. serwery itd w home dlatego ta lokalizacja.
[/quote]
to że wszyscy tak robią to nie znaczy że trzeba proponować innym głupie nawyki.
[quote=”anon95087592, post:3, topic:15943”]
Mogłem też tak, lecz jak jest obecnie to źle nie jest.
[/quote]
jest kombinowanie bez sensu.
[quote=”anon95087592, post:3, topic:15943”]
To plik który odpowiada za obsługę usługi na serwerze w tym wypadku nexus’a
[/quote]
wiem, mniej doświadczony użytkownik może jednak się zastanawiać czy to nie spowoduje jakichś problemów.
[quote=”anon95087592, post:3, topic:15943”]
Bo to poradnik instalacji nie korzystania, a panel jest na tyle łatwy że praktycznie większość użytkowników da radę.
[/quote]
nie zmienia to faktu że i tak warto pokazać chociaż podstawy.
anon95087592 | 2020-09-02 20:27:30 UTC | #6
[quote=”TheMultii, post:4, topic:15943”]
Z całą pewnością nie wszyscy…
[/quote]
Przepraszam fakt większość *
[quote=”KMatuszak, post:5, topic:15943”]
poradnik sugeruje że wymagany jest taki z 2GB ramu.
[/quote]
Źle to ująłem poprawię
[quote=”KMatuszak, post:5, topic:15943”]
nie, skoro aplikacja nie korzysta z GUI to całe jest niepotrzebne.
[/quote]
Może i fakt 😅 nie wiem ja zawsze całe instalowałem
[quote=”KMatuszak, post:5, topic:15943”]
wiem, mniej doświadczony użytkownik może jednak się zastanawiać czy to nie spowoduje jakichś problemów.
[/quote]
W sumie fakt ale się starałem 😅
[quote=”KMatuszak, post:5, topic:15943”]
nie zmienia to faktu że i tak warto pokazać chociaż podstawy.
[/quote]
To miał być temat na następne poradniki 👍
Edit: @KMatuszak ścieżki poprawione na bardziej stosowne
KMatuszak | 2020-09-02 20:34:45 UTC | #7
[quote=”anon95087592, post:1, topic:15943”]
Debian 9/10
[/quote]
[quote=”anon95087592, post:1, topic:15943”]
sudo apt install openjdk-8-jre
[/quote]
Btw, to nie zadziała na Debianie 10. Słabo tak pisać poradnik i nie testować go :worried:
anon95087592 | 2020-09-02 20:43:53 UTC | #8
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
TheMultii | 2020-09-03 07:09:33 UTC | #9
[quote=”anon95087592, post:1, topic:15943”]
Krok 2
[/quote]
[quote=”anon95087592, post:1, topic:15943”]
Krok 4
[/quote]
Instrukcje niejasne, nie ma kroku trzeciego.
anon95087592 | 2020-09-03 07:46:58 UTC | #10
Kurka faktycznie nie widziałem 😂😂😂😂 poprawione