GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS7へのSonatypeNexusリポジトリOSSのインストール

Sonatype Nexusは、ほとんどのコンポーネント、バイナリ、ビルドアーティファクトに世界中で使用されている人気のあるリポジトリマネージャーです。 Gradle、Ant、Maven、IvyなどのJava仮想マシン(JVM)エコシステムのサポートが付属しています。

Sonatype Nexusリポジトリは、Eclipse、IntelliJ、Hudson、Jenkins、Puppet、Chef、Dockerなどの標準ツールと互換性があり、バイナリコンテナー、アセンブリ、完成品の配信を通じて開発コンポーネントを管理できます。

このチュートリアルでは、CentOS7でSonatypeNexusリポジトリOSSバージョンを設定するための包括的なガイドを提供します。

CentOS7へのSonatypeNexusリポジトリOSSのインストール

チュートリアルを開始する前に、SonatypeNexusRepoを実行するための最小システム要件を見てみましょう。

システム要件

  • 最小CPU:4、推奨CPU:8以上
  • ホスト8GBの最小物理/RAM

1。プレインストール

ホスト名の設定から始めます。

hostnamectl set-hostname nexus

CentOSシステムを更新します。

 yum update -y

次のコマンドを使用してJavaをインストールします。

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

インストールが完了したら、Javaのバージョンをチェックして、リポジトリをダウンロードする次のステップに進む準備が整っていることを確認します。

java -version

2。 Nexusリポジトリマネージャー3をダウンロード

optディレクトリに移動します:

cd /opt

公式ウェブサイトからリポジトリの最新のURLをコピーし、wgetを使用してダウンロードします。

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

tarファイルを抽出します。

tar -xvzf latest-unix.tar.gz

nexusファイルとnexusデータディレクトリを含む2つのディレクトリが表示されます。

ls -lh

フォルダの名前を変更します。

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

3。ユーザー/権限と構成を設定する

I.ネクサスサービスのユーザーを追加します。

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

II。ネクサスファイルとネクサスデータの所有権を設定します。

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

III。 Nexusの構成を変更し、カスタムデータディレクトリを設定します

「nexus.vmoptions」を編集します。

vim /opt/nexus/bin/nexus.vmoptions

データディレクトリを変更します。

-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

ファイルを保存して終了します。

IV。ネクサスサービスアカウントのユーザーを変更します。

「nexus.rc」ファイルを編集します。

vim /opt/nexus/bin/nexus.rc

「run_as_user」パラメータのコメントを解除し、新しい値を追加します。

run_as_user="nexus"

V.リモート接続のリッスンを停止します。

「nexus-default.properties」ファイルを変更する必要があります。

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

application-host=0.0.0.0をapplication-host=127.0.0.1に変更します。

VI。 nexusユーザーのオープンファイル制限を構成します。

vim /etc/security/limits.conf

以下の値をファイルに追加します。

nexus - nofile 65536

保存して終了ファイルを作成します。

4。 Nexusをシステムサービスとして設定する

「/etc/ systemd /system/」にSystemdサービスファイルを作成します。

vim /etc/systemd/system/nexus.service

以下をファイルに追加します。

[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

systemctlをリロードします。

systemctl daemon-reload

システム起動時にサービスを有効にします。

systemctl enable nexus.service

サービスを開始します。

systemctl start nexus.service

ログファイルを監視します。

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

サービスポートを確認してください。

netstat -tunlp | grep 8081

5。 Nginxをセットアップする

epelリポジトリを設定します。

yum install -y epel-release

リポジトリを一覧表示します。

yum repolist

Nginxをインストールします。

yum install nginx

システムブート時にnginxを設定する

systemctl enable nginx

Nginxのステータスを確認し、サービスが実行されていない場合はサービスを開始します。

systemctl status nginx
systemctl start nginx

6。サーバーのDNSレコードを設定します。

次に、DNSマネージャーに移動し、サーバーのAレコードを追加します。

A Domain Name Server IP

ここでは、AWSRoute53を使用してDNSを設定しました。

7。 certbotを使用してSSLを構成する

I.最初にcertbotパッケージをインストールします。

yum install certbot python2-certbot-nginx

II。証明書をインストールします。

certbot --nginx

いくつかの質問をし、メールアドレス、ドメイン名、必要な入力を次のように入力します。

インストールが完了したら、nginx.confを開きます。

vim /etc/nginx/nginx.conf

certbotSSL構成を確認できます。

III。プロキシパスを追加

次のコンテンツをロケーションブロックに追加します。

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;

 }

ファイルを保存して終了します。

nginx構文を確認してください:

nginx -t

Nginxを再起動します:

systemctl restart nginx

8。ファイアウォールルールを設定する

次に、特定のパブリックIPへのhttpsアクセスを有効にします。以下のコマンドを実行します。

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

httpsを開いて公開する必要がある場合は、以下のコマンドを実行してください:

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

ファイアウォールをリロードします。

firewall-cmd --reload

9。 NginxのSELinuxポリシーを設定する

setsebool -P httpd_can_network_connect 1

10。ドメイン名を使用してWebサイトを閲覧する

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

11。サーバーにサインインします

デフォルトのユーザー名で「admin」としてサインインします。サーバーで以下のコマンドを実行し、パスワードを取得します。

cat /opt/nexusdata/nexus3/admin.password

最初のログイン後、以下に示すような同様のウィンドウが表示されます。

[次へ]をクリックして、管理者ユーザーの新しいパスワードを設定します。

もう一度、[次へ]をクリックすると、[匿名アクセスの構成]ウィンドウが表示されます。匿名アクセスを有効にしないでください。

[次へ]ボタンをクリックすると、完全なセットアップが表示されます。

仕上げをクリックします。

CentOS7にSonatypeNexusリポジトリOSSをインストールする方法は以上です。


Cent OS
  1. CentOS7にFail2Banをインストールする方法

  2. CentOSへのWSO2APIManagerのインストール

  3. Centosファイルの所有者は編集時に変更されましたか?

  1. Centos6へのTomcat8のインストール

  2. CentOS7へのMariaDBのインストール

  3. CentOS 6.6 に Docker をインストールする

  1. PhpMydmin(CentosまたはUbuntu)のインストール

  2. CentOSへのPostgreSQLとphpPgAdminのインストール

  3. PhpMydmin(CentosまたはUbuntu)のインストール