Oracle Linux 8 NEXUS OSS Kurulumu
Tags: oraclelinux, linux, nexus, beginners
Published: 2023-10-16 06:42:44

## 1- Java JDK'yı yükleyin
Nexus Java tabanlı bir uygulamadır bu yüzden sanal makinenizde java yüklü olmalıdır, eğer değilse aşağıdaki kod satırını yazarsanız indirebilirsiniz:

```
dnf install java-1.8.0-openjdk.x86_64 -y

```
İndirdikten sonra bu kod satırı ile Java versiyonunun doğrulayabilirsiniz:

```
java -version

```

Şuna benzeyen bir output almanız gerekmektedir:

```
openjdk version "1.8.0_342"
OpenJDK Runtime Environment (build 1.8.0_342-b07)
OpenJDK 64-Bit Server VM (build 25.342-b07, mixed mode)
```

## 2- Sonatype Nexus Oracle Linux 8 Kurulumu
Sanal makinemize javayı kurduktan sonra Nexus kurulumuna başlayabiliriz. Öncelikle bir Nexus kullanıcısı oluşuralım:

```
adduser nexus

```
Daha sonra Nexus dosyalarını saklamak için bir dizin oluşturalım:

```
mkdir /app

```
Sonrasında uzantının altına gelelim ve Nexus'un güncel versiyonunu indirelim:

```
cd /app
wget -O nexus.tar.gz https://download.sonatype.com/nexus/3/latest-unix.tar.gz
```
İndirdiğimiz sıkıştırılmış dosyayı açalım ve ismini değiştirelim:

```
tar -xvf nexus.tar.gz
mv nexus-3* nexus

```
Gerekli yetkileri ve izinleri verelim:

```
chown -R nexus:nexus /app/nexus
chown -R nexus:nexus /app/sonatype-work
```
Nexus config dosyasının içine gidelim ve altaki satırı değiştirerek Nexus kullanıcısını tanımlayalım:

```
nano /app/nexus/bin/nexus.rc
run_as_user="nexus"
```

## 3- Systemd Servisi Oluşturma
Nexusu kullanabilmek için bir systemd servis dosyası oluşturmak gerekiyor, altaki komut ile dosyayı oluşturup içini dolduruyoruz:

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

```

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

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

[Install]
WantedBy=multi-user.target

```
Dosyayı kaydedip sistemi tekrar yükleyip ayağa kaldırıyoruz:

```
systemctl daemon-reload
systemctl start nexus
systemctl enable nexus

```
Şu şekilde bir output almanız gerekiyor:

```
● nexus.service - nexus service
   Loaded: loaded (/etc/systemd/system/nexus.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-09-01 07:51:39 EDT; 5s ago
  Process: 13727 ExecStart=/app/nexus/bin/nexus start (code=exited, status=0/SUCCESS)
 Main PID: 13939 (java)
    Tasks: 47 (limit: 49496)
   Memory: 509.2M
   CGroup: /system.slice/nexus.service
           └─13939 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.342.b07-2.el8_6.x86_64/jre/bin/java -server -Dinstall4j.jvmDir=/usr/lib/jvm/java-1.8>

Sep 01 07:51:39 oraclelinux8 systemd[1]: Starting nexus service...
Sep 01 07:51:39 oraclelinux8 systemd[1]: Started nexus service.
```

## 4- Nexus Web Arayüzüne Erişim
Bu noktada Nexus **8081** portu üzerinden çalışmaya başlayacak, bu komut ile kontrol edebilirsiniz:

```
ss -antpl

```
Şu şekilde bir output almanız gerekmekte:

```
State        Recv-Q       Send-Q             Local Address:Port              Peer Address:Port       Process                                  
LISTEN       0            1                      127.0.0.1:42221                  0.0.0.0:*           users:(("java",pid=13939,fd=118))       
LISTEN       0            50                       0.0.0.0:8081                   0.0.0.0:*           users:(("java",pid=13939,fd=971)) 
```
Nexus'un varsayılan kullanıcı adı admin ve şifresi /app/sonatype-work/nexus3/admin.password içinde yazan satırdır. `cat /app/sonatype-work/nexus3/admin.password` komutu ile şifreyi kopyalayıp **http://your-server-ip:8081**
arayüzünde kullanıcı adı şifre kombinasyonu yaparak Nexus'a erişim sağlayabilirsiniz.