説明:ネクサスはSonatypeは、倉庫管理プラットフォーム、NuexusリポジトリOSS3サポートMavenの、NPM、ドッカー、YUM、提供されデータストレージおよび配布のおよび他のフォーマット。
まず、JDKをインストール
1)JDKをインストールします。
yumをJava対応-yインストール1.8。0 -openjdk *
2)設定環境
vimのは/ etc / プロファイル #のセットJava環境の 輸出JAVA_HOME =は/ usr / libに/ JVM / Javaベース1.8。0 -openjdk- 1.8。0.222 .b10- 0 .el7_6.x86_64 輸出PATH = $ PATHに:$ JAVA_HOME / ビン 輸出CLASSPATH =。$ JAVA_HOME / libに/ dt.jar:$ JAVA_HOME / libに/ tools.jarを
3)過負荷
元の/ etc / プロファイル エコー" のソースは/ etc / profile " >>は/ etc / bashrcには Javaの -version
第二に、インストールネクサス
2.1をダウンロード
ます。mkdir -pは/ opt /ネクサス&& CDの/ opt / ネクサス のwgetます。https:// sonatype-download.global.ssl.fastly.net/repository/repositoryManager/3/nexus-3.18.1-01-unix.tar.gz タール-zxvf nexus- 3.18。1 - 01 - unix.tar.gz MVネクサス - 3.18。1 - 01 nexus3。18
2.2の設定
2.2.1 JDKを変更します
vimのは/ opt /データ/ネクサス/ nexus3。18 / binに/ ネクサス
INSTALL4J_JAVA_PREFIX = " /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el7_6.x86_64 "
2.2.2スタートアップユーザーを変更
vimのは/ opt /データ/ネクサス/ nexus3。18 / binに/ nexus.rc run_as_user = " ルート"
2.2.3データを変更し、保存場所をログ
vimのは/ opt /データ/ネクサス/ nexus3。18 /ビン/ nexus.vmoptions -XX:ログ・ファイル= / OPT /データ/ BLOB-格納/その他/ sonatype作業/ nexus3 /ログ/ jvm.log -Dkaraf.data = / OPT /データ/ BLOB-格納/その他/ sonatype-仕事/ nexus3 する。-Djava.io.tmpdir =は/ opt /データ/ブロブストア/他者/ sonatype-仕事/ nexus3 / tmpに
2.2.4デフォルトのポートを確認します
猫は/ opt /データ/ネクサス/ nexus3。18の/ etc / nexus- デフォルトの.properties | grepのアプリケーションポート
2.3開始
2.3.1起動スクリプト
vimのは/ usr / libに/にsystemd /システム/ nexus.service [単位] 説明 = ネクサスサービス [サービス] タイプ = フォーク LimitNOFILE = 65536 ExecStart =は/ opt /ネクサス/ nexus3を。18 / binに/ ネクサスはスタート ExecReload =は/ opt /ネクサス/ nexus3。18 / binに/ ネクサス再起動 ExecStop =は/ opt /ネクサス/ nexus3。18 /ビン/ ネクサス停止 再始動 =オン故障 [インストール] WantedBy = multi-user.target
開始から2.3.2
サービスが起動に追加しました
systemctl daemon- リロード
systemctlネクサスを有効に
ネクサスを開始systemctl
第三に、nginxのインストール
3.1インストール
YUM -y nginxのインストール
3.2証明書要求
アプリケーションのSSL証明書の下で、および/ etc / nginxの/証明書ディレクトリに保存されています
MKDIRは/ etc / nginxの/ CERT
3.3 nginx.conf
VIMの/ etc / nginxの/ nginx.conf #Notesサーバー、次の行を追加します 上流nexusserver { サーバー172.16。2.158:8081 ; } 上流mirrornexus { サーバー172.16。2.158:6001 ; } 上流nexusdocker { サーバー172.16。2.158:6000 ; }
説明:
1)8081は、ネクサスサーバポート、ネクサス独自のサービスプログラムです。
2)ドッカープロキシポート6001、プロキシなどの中央リポジトリとして。
3)6000ドッキングウィンドウホストされているポート、プッシュプルミラーリング
4)6001及び6000 nginxのは、予め設定された対応する構成ポートを生成するために、バックグラウンドで署名する必要があります。
3.4コンフィギュレーションサービス
3.4.1サービスの手続き
vimの/etc/nginx/conf.d/ nexusserver.conf サーバー{ 聞く 443 ; SERVER_NAME nexus.wmq.com; 上のSSL; ssl_certificate CERT / 1566822_nexus.wmq.com.pem。 ssl_certificate_key CERT / 1566822_nexus.wmq.com.key。 client_max_body_size 0 ; インデックスのindex.html; 位置 / { proxy_passのhttp:// nexusserver。 オフ#proxy_redirect; proxy_set_headerホスト$ホスト; proxy_set_header X -Forwarded-プロト" HTTPS "; proxy_set_header X -Real- IP $ REMOTE_ADDR。 proxy_set_header X -Forwarded- $ proxy_add_x_forwarded_forについては、 } } サーバー{ 聞く 80 。 SERVER_NAME nexus.wmq.com; client_max_body_size 0 ; インデックスのindex.html; 場所 / { 返す 301のhttps:// $ SERVER_NAME $ REQUEST_URIを。 } }
3.4.2ウェアハウス・エージェント
Vimの/etc/nginx/conf.d/のmirrornexus.confの サーバー{ 聞く 443 ; SERVER_NAME mirror.nexus.wmq.com; 上のSSL; ssl_certificate CERT / mirror.nexus.wmq.com.pem。 ssl_certificate_key CERT / mirror.nexus.wmq.com.key。 client_max_body_size 0 ; インデックスのindex.html; 位置 / { proxy_passのhttp:// mirrornexus。 オフ#proxy_redirect; proxy_set_headerホスト$ホスト; proxy_set_header X -Forwarded-プロト" HTTPS "; proxy_set_header X -Real- IP $ REMOTE_ADDR。 proxy_set_header X -Forwarded- $ proxy_add_x_forwarded_forについては、 } } サーバー{ 聞く 80 。 SERVER_NAME mirror.nexus.wmq.com; client_max_body_size 0 ; インデックスのindex.html; 場所 / { 返す 301のhttps:// $ SERVER_NAME $ REQUEST_URIを。 } }
3.4.3ミラー倉庫
vimの/etc/nginx/conf.d/ nexusdocker.conf サーバー{ 聞く 443 ; SERVER_NAME reg.nexus.wmq.com; 上のSSL; ssl_certificate CERT / reg.nexus.wmq.pem。 ssl_certificate_key CERT / reg.nexus.wmqhealth.key。 client_max_body_size 0 ; インデックスのindex.html; 位置 / { proxy_passのhttp:// nexusdocker。 オフ#proxy_redirect; proxy_set_headerホスト$ホスト; proxy_set_header X -Forwarded-プロト" HTTPS "; proxy_set_header X -Real- IP $ REMOTE_ADDR。 proxy_set_header X -Forwarded- $ proxy_add_x_forwarded_forについては、 } } サーバー{ 聞く 80 。 SERVER_NAME reg.nexus.wmq.com; client_max_body_size 0 ; インデックスのindex.html; 場所 / { 返す 301のhttps:// $ SERVER_NAME $ REQUEST_URIを。 } }
3.5スタートnginxの
nginxの- トン
systemctlのnginxを有効に
開始systemctl nginxの
3.6 DNS
nexus.wmq.com、mirror.nexus.wmq.com、reg.nexus.wmq.com 3人のドメイン名は、ネクサスのホストネットワークアドレスに解決します
第四に、定期的なクリーニングミラー
4.1のダウンロードツール
githubのアドレスします。https://github.com/mlabouardy/nexus-cli
MKDIRは/ opt /ネクサス/クリーンドッキングウィンドウ-画像&& CDの/ opt /ネクサス/クリーンdocker- 画像 のwgetます。https:// s3.eu-west-2.amazonaws.com/nexus-cli/1.0.0-beta/ linux /ネクサス-CLI のchmod + Xネクサス-CLI
4.2の設定
./nexus- CLIのconfigure を入力ネクサスは、ホストます。http:// 127.0.0.1:8081 ネクサスリポジトリ名を入力します。docker- wmqe ネクサスユーザー名を入力します。管理者は、 ネクサスパスワードを入力します。*******
カレントディレクトリに.credentialsファイルを生成し、ファイルレコード情報は、上記で入力しました。
4.3スクリプト
vimのクリーンdocker- images.shの #!/ binに/ SH CLI_HOME =は/ opt /ネクサス/クリーンdocker- 画像 KEEP_VERSION_NUM = 10 IMAGES = $($のCLI_HOME /ネクサス-cliの画像LS |はgrep - トータルV) clean_images(){ CDの$のCLI_HOME ため IMGS で$(エコー$ IMAGES)。 やる エコー「清理$ IMGSを」。 。/ネクサス-cliの画像は、-name $ IMGSを削除- $のKEEP_VERSION_NUM保つ 行わ } clean_imagesを
4.4スケジュールされたタスク
crontabの- E 0 1 * * * shの/opt/nexus/clean-docker-images/clean-docker-images.sh> /opt/nexus/clean-docker-images/clean-docker-images.log 2 >&1