GNU/Linux >> Belajar Linux >  >> Cent OS

Menginstal OSS Repositori Nexus Sonatype di CentOS 7

Sonatype Nexus adalah manajer repositori populer yang digunakan di seluruh dunia untuk sebagian besar komponen, binari, dan artefak build. Muncul dengan dukungan untuk ekosistem Java Virtual Machine (JVM), termasuk Gradle, Ant, Maven, dan Ivy.

Kompatibel dengan alat standar termasuk Eclipse, IntelliJ, Hudson, Jenkins, Puppet, Chef, Docker, dll., repo Sonatype Nexus dapat mengelola komponen dev melalui pengiriman untuk wadah binari, rakitan, dan barang jadi.

Dalam tutorial ini, kami akan memberikan Anda panduan komprehensif tentang pengaturan versi OSS Repositori Nexus Sonatype di CentOS 7.

Menginstal OSS Repositori Nexus Sonatype di CentOS 7

Sebelum memulai tutorial, mari kita lihat persyaratan sistem minimum untuk menjalankan Sonatype Nexus Repo.

Persyaratan sistem

  • CPU Minimum:4, CPU yang Direkomendasikan:8+
  • Minimum fisik/RAM pada host 8 GB

1. Pra-instalasi

Mulailah dengan menyetel Nama Inang.

hostnamectl set-hostname nexus

Perbarui sistem CentOS Anda.

 yum update -y

Instal Java menggunakan perintah berikut:

yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel

Setelah instalasi selesai, periksa versi java untuk memastikan Anda siap untuk melanjutkan ke langkah berikutnya mengunduh Repo.

java -version

2. Unduh Nexus Repository Manager 3

Arahkan ke direktori opt:

cd /opt

Salin URL Repo terbaru dari situs web resmi, lalu unduh menggunakan wget.

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

Ekstrak file tar.

tar -xvzf latest-unix.tar.gz

Anda akan melihat dua direktori, termasuk file nexus dan direktori data nexus.

ls -lh

Ganti nama folder.

mv nexus-3.20.1-01 nexus
mv sonatype-work nexusdata

3. Atur Pengguna/Izin dan Konfigurasi

I. Menambahkan pengguna untuk layanan nexus.

useradd --system --no-create-home nexus

II. Setel kepemilikan untuk file nexus dan data nexus.

chown -R nexus:nexus /opt/nexus
chown -R nexus:nexus /opt/nexusdata

AKU AKU AKU. Ubah konfigurasi Nexus dan setel direktori data khusus

Edit “nexus.vmoptions”.

vim /opt/nexus/bin/nexus.vmoptions

Ubah direktori data.

-Xms2703m
-Xmx2703m
-XX:MaxDirectMemorySize=2703m
-XX:+UnlockDiagnosticVMOptions
-XX:+LogVMOutput
-XX:LogFile=../nexusdata/nexus3/log/jvm.log
-XX:-OmitStackTraceInFastThrow
-Djava.net.preferIPv4Stack=true
-Dkaraf.home=.
-Dkaraf.base=.
-Dkaraf.etc=etc/karaf
-Djava.util.logging.config.file=etc/karaf/java.util.logging.properties
-Dkaraf.data=../nexusdata/nexus3
-Dkaraf.log=../nexusdata/nexus3/log
-Djava.io.tmpdir=../nexusdata/nexus3/tmp
-Dkaraf.startLocalConsole=false

Simpan dan keluar dari file.

IV. Ubah pengguna untuk akun layanan nexus.

Edit file “nexus.rc”.

vim /opt/nexus/bin/nexus.rc

Batalkan komentar parameter “run_as_user” dan tambahkan nilai baru.

run_as_user="nexus"

V. Berhenti mendengarkan koneksi jarak jauh.

Kita perlu memodifikasi file “nexus-default.properties”.

vim /opt/nexus/etc/nexus-default.properties

Ubah application-host=0.0.0.0 menjadi application-host=127.0.0.1.

VI. Konfigurasikan batas file terbuka pengguna nexus.

vim /etc/security/limits.conf

Tambahkan nilai di bawah ini ke file.

nexus - nofile 65536

Simpan dan keluar file.

4. Setel Nexus sebagai Layanan Sistem

Buat file layanan Systemd di “/etc/systemd/system/”.

vim /etc/systemd/system/nexus.service

Tambahkan yang berikut ini ke file.

[Unit]
Description=Nexus Service
After=syslog.target network.target

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

[Install]
WantedBy=multi-user.target

Muat ulang systemctl.

systemctl daemon-reload

Aktifkan layanan pada boot sistem.

systemctl enable nexus.service

Mulai layanan.

systemctl start nexus.service

Pantau file log.

tail -f /opt/nexusdata/nexus3/log/nexus.log

Periksa port layanan.

netstat -tunlp | grep 8081

5. Siapkan Nginx

Siapkan Repositori epel.

yum install -y epel-release

Buat daftar repositori.

yum repolist

Instal Nginx.

yum install nginx

setel nginx pada boot sistem

systemctl enable nginx

periksa status Nginx dan mulai layanan jika layanan tidak berjalan.

systemctl status nginx
systemctl start nginx

6. Tetapkan catatan DNS untuk server.

Kemudian buka pengelola DNS Anda dan tambahkan A record untuk server Anda.

A Domain Name Server IP

Di sini kami telah menggunakan AWS route 53 untuk menyiapkan DNS kami.

7. Konfigurasi SSL menggunakan certbot

I. Instal paket certbot terlebih dahulu.

yum install certbot python2-certbot-nginx

II. Instal sertifikat.

certbot --nginx

Ini akan mengajukan beberapa pertanyaan dan memasukkan email, nama domain, dan input yang diperlukan sebagai berikut.

Setelah instalasi selesai, buka nginx.conf.

vim /etc/nginx/nginx.conf

Anda dapat melihat konfigurasi SSL certbot.

AKU AKU AKU. Tambahkan kartu proxy

Tambahkan konten berikut ke Blok Lokasi.

location / {

      proxy_pass "http://127.0.0.1:8081";
      proxy_set_header        Host $host;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header        X-Forwarded-Proto $scheme;
      proxy_set_header        X-Forwarded-Ssl on;
      proxy_read_timeout      300;
      proxy_connect_timeout   300;

 }

Simpan dan keluar dari file.

Periksa sintaks nginx:

nginx -t

Mulai ulang Nginx:

systemctl restart nginx

8. Tetapkan aturan firewall

Sekarang aktifkan akses https ke IP publik tertentu. Jalankan perintah di bawah ini.

firewall-cmd --permanent --zone=public --add-rich-rule='
rule family="ipv4"
source address="123.44.8.180/32"
port protocol="tcp" port="443" accept'

Jika Anda perlu membuka https untuk menjalankan perintah publik di bawah ini:

firewall-cmd --zone=public --permanent --add-service=https

Muat ulang firewall.

firewall-cmd --reload

9. Siapkan kebijakan SELinux untuk Nginx

setsebool -P httpd_can_network_connect 1

10. Jelajahi situs web menggunakan nama domain Anda

eg: https://nexusrepo.fosslinux.com/

11. Masuk ke server

Masuk dengan nama pengguna default sebagai "admin." Jalankan perintah di bawah ini di server dan dapatkan kata sandinya.

cat /opt/nexusdata/nexus3/admin.password

Setelah login pertama, Anda akan melihat jendela serupa, seperti yang ditunjukkan di bawah ini.

Klik berikutnya dan siapkan kata sandi baru untuk pengguna admin.

Sekali lagi, klik next, dan Anda akan melihat jendela "Configure Anonymous Access". Jangan aktifkan Akses Anonim.

Klik tombol Berikutnya, dan Anda dapat melihat penyiapan lengkapnya.

Klik selesai.

Itu saja tentang menginstal Sonatype Nexus Repository OSS di CentOS 7.


Cent OS
  1. Menginstal Tomcat 8 di Centos 6

  2. Menginstal MariaDB di CentOS 7

  3. Menginstal PhpMydmin (Centos atau Ubuntu)

  1. Menginstal PostgreSQL Dan phpPgAdmin Di CentOS

  2. Menginstal PhpMydmin (Centos atau Ubuntu)

  3. Cara menginstal Fail2Ban di CentOS 7

  1. Memasang Server CentOS 6.2 Oracle-Ready

  2. Menginstal Manajer API WSO2 di CentOS

  3. Menginstal Docker di CentOS 6.6