ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ nexus ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ APT ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Sonatype Nexus 3?
ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ APT ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Sonatype Nexus 3?
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Sonatype Nexus 3?
Sonatype Nexus 3 β ΡΡΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΠΌΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΌ web-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ. ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΊΠ°ΠΊ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ² Π΄Π°Π½Π½ΡΡ (yum, apt, Maven, Docker, npm, PyPl ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅), ΡΠ°ΠΊ ΠΈ ΡΠΎΡΠΌΠ°Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Raw, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Ρ ΡΠ°Π½ΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΡΠΈΠΏΡ ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ, ΠΊΠ°ΠΊ Π½Π° ΠΎΠ±ΡΡΠ½ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΡΡ ΠΈΠ»ΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ, ΡΠ°ΠΊ ΠΈ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π² docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅. Π― ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π» Nexus Π² docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π±ΡΠ΄Ρ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Π½ΡΡΡ APT ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² docker. ΠΠΎΡΡΡΠΏΠ½ΡΠ΅ docker-ΠΎΠ±ΡΠ°Π·Ρ Sonatype Nexus 3 ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
ΠΠ΅ΡΠ²ΠΎΠ΅ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ docker-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Ρ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ bash:
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ pinentry, Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π΄Π°Π»ΡΡΠ΅ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠΈ Π΄Π»Ρ apt ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ:
ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° pinentry, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΡΡΡΠΏΠ°ΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ:
ΠΠ°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΏΠΎΠ»Ρ, Π²Π²ΠΎΠ΄ΠΈΠΌ O ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Enter. ΠΠ°Π»Π΅Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²Π²Π΅ΡΡΠΈ 2 ΡΠ°Π·Π° ΠΏΠ°ΡΠΎΠ»Ρ, Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠ»ΡΡΠ°. ΠΠΎΠΏΠΈΡΡΠ΅ΠΌ ID, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ 6C44AA9D06EA1B2E805C90FF6935F7FB57FFEF6F. Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΎΡΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ:
Π‘ΠΎΠ·Π΄Π°ΡΠΌ Π·Π°ΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ:
ΠΠ΄Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²Π²Π΅ΡΡΠΈ ΠΏΠ°ΡΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ID.
ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π·Π°ΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΠΎΠΏΠΈΡΡΠ΅ΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ APT ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π² web-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Nexus http://10.10.1.1:8080. ΠΠ²ΡΠΎΡΠΈΠ·ΡΠ΅ΠΌΡΡ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° ΡΠ΅ΡΡΠ΅ΡΡΠ½ΠΊΡ Π²Π²Π΅ΡΡ Ρ. ΠΠ°Π»Π΅Π΅ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ°Π·Π΄Π΅Π» Repositories. ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Create repository ΠΈ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ apt(hosted):
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ APT ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΠ°Π»Π΅Π΅ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΏΠΎΠ»Ρ ΠΈ Π²ΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π² ΠΏΠΎΠ»Π΅ Signing Key ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° private.gpg.key:
ΠΡΡΠ°Π²Π»ΡΠ΅ΠΌ Π·Π°ΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ
Π ΠΏΠΎΠ»Π΅ Passphrase Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΏΠ°ΡΠΎΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ID ΠΈ Π·Π°ΠΊΡΡΡΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΠ°ΠΆΠΈΠΌΠ°Π΅ΠΌ Create repository. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ APT, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ°ΡΡ deb-ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΊ Debian/Ubuntu ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΠ‘.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Sonatype Nexus Π΄Π»Ρ ΠΏΡΠΎΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ² Maven
ΠΡΠΎ ΡΡΠΈΠ»ΠΈΡΡ ΡΠ±ΠΎΡΠΊΠΈ Π΄Π»Ρ Java-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Maven ΠΈ ΠΏΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° Π΄Π»Ρ Maven-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Sonatype Nexus Π½Π° Π₯Π°Π±ΡΠ΅ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ (ΡΡΡ ΠΈ ΡΡΡ). ΠΠ΄Π½Π°ΠΊΠΎ, Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅ΠΏΡΠ° ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π½Π΅ Π±ΡΠ»ΠΎ. ΠΡΠΎ Π½Π΅ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΉ Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠΎ Π΄ΠΎΠ»Π³Ρ ΡΠ»ΡΠΆΠ±Ρ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π΅Π³ΠΎ Π½Π° Π½Π°ΡΠ΅ΠΉ ΡΠΈΡΠΌΠ΅, ΠΈ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΠΎΠ²Π΅ΡΡ ΠΈΠ· ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ. ΠΠΎΠ·Π½ΠΈΠΊΡΠ΅ΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΈ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ Π΅Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΈ Ρ ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎΠΌ. ΠΠΎ ΠΎΠ±ΠΎ Π²ΡΠ΅ΠΌ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ.
ΠΠ°ΡΠ΅ΠΌ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ?
ΠΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ Maven-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Sonatype Nexus) ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ² Maven, ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½ΠΎ Π½Π΅ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² ΠΎΠ±ΡΠΈΠΉ Π΄ΠΎΡΡΡΠΏ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Sonatype Nexus
ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠ΅Π»ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π½Π° ΠΌΠΎΠ΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΎ. ΠΠ° ΡΠ°ΠΉΡΠ΅ Sonatype Π΅ΡΡΡ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎΠΉ ΠΎΠ±ΡΡΠ°ΡΡΠΈΠΉ ΡΠΊΡΠΈΠ½ΠΊΠ°ΡΡ. ΠΠΊΡΠ°ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΊΠ°ΠΆΡ ΡΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
Π ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅, ΠΈΠΌ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π±Π΅Π· Π²ΡΡΠΊΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ(ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Maven central, Codehaus, Apache), Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ°, Π³ΡΡΠΏΠΏΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈ.Ρ.ΠΏ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Maven Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Sonatype Nexus Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΎΠΊΡΠΈ
ΠΠ°Π½Π½ΡΠΉ ΡΡΠ°ΠΏ ΡΠΆΠ΅ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½Π΅Π΅. ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π½Π°ΠΌ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
ΠΠ΄Π΅ΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡΡ Π² settings.xml Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
mirror >
id > nexus id >
mirrorOf > * mirrorOf >
url > http://host:8081/nexus/content/groups/public url >
mirror >
ΠΠΏΠΎΠ»Π½Π΅ Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ ΡΠΎΠ²Π΅Ρ, Π½ΠΎ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΡΠ΄ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Nexus. Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π² Π΄Π΅Π»Π΅ ΠΊΠ°ΠΊΡΡ-Π½ΠΈΠ±ΡΠ΄Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΡΠΎΡΠΎΠ½Π½ΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π²ΡΠ½ΡΠΆΠ΄Π΅Π½ Π΄Π΅ΡΠ³Π°ΡΡ Π°Π΄ΠΌΠΈΠ½Π°, ΡΡΠΎΠ± ΡΠΎΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² Nexus. ΠΠ° Π²ΡΠ΅ΠΌΡ ΠΎΡΠΊΠ»ΡΡΠ°ΡΡ ΡΡΠΎ Π·Π΅ΡΠΊΠ°Π»ΠΎ Π² settings.xml β ΡΠΎΡ Π΅ΡΠ΅ ΠΊΠΎΡΡΡΠ»Ρ.
profiles >
profile >
id > nexus id >
repositories >
repository >
id > nexus-repo id >
name > Nexus repo name >
url > http://host:8081/nexus/content/groups/public url >
releases >
enabled > true enabled >
releases >
snapshots >
enabled > true enabled >
snapshots >
repository >
repositories >
pluginRepositories >
pluginRepository >
id > nexus-repo id >
name > Nexus repo name >
url > http://host:8081/nexus/content/groups/public url >
releases >
enabled > true enabled >
releases >
snapshots >
enabled > true enabled >
snapshots >
pluginRepository >
pluginRepositories >
profile >
profiles >
activeProfiles >
activeProfile > nexus activeProfile >
activeProfiles >
ΠΠΎ ΡΡΡΠΈ, Π΄Π°Π½Π½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΡΠΎΡΠΈΠ»Ρ, Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Nexus ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. Π Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΎΠ½ ΠΏΠ΅ΡΠ²ΡΠΌ Π² ΠΎΡΠ΅ΡΠ΅Π΄Ρ.
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Nexus_Ρ. Π’ΠΎΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½Π°Π»ΠΈΡΠΈΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠ° Π² Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ Π»ΠΈΠ±ΠΎ ΠΎΡΠ΄Π°Π΅Ρ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ Π°ΡΡΠ΅ΡΠ°ΠΊΡ, Π»ΠΈΠ±ΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° Maven ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ ΠΎΠΏΡΠΎΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ Π² pom.xml ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π° Π·Π°ΡΠ΅ΠΌ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡ ΠΈ ΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Maven central.
ΠΡΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°
ΠΡΡΠ²Π»Π΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ β ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π·Π°Π±ΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² pom.xml. ΠΡΠ°Π²Π΄Π°, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΡΠΎΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² (ΠΊΡΠΎΠΌΠ΅ 2-Π³ΠΎ) Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΡΠ²Π»ΡΡΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Nexus ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² Nexus, ΡΠΎ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Ρ ΠΊΠΎΡΠΎΡΡΡ Nexus ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½, ΡΠ±ΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ, Π±Π΅Π· Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ Nexus Π½Π΅ ΡΠΌΠΎΠ³ΡΡ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π²ΠΎΠΎΠ±ΡΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΡ Maven Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΡ, ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π½ΡΠΆΠ½ΠΎ Π·Π°ΠΏΡΠΎΡΠΈΡΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΡ.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΡΠΎΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ Π°ΡΡΠ΅ΡΠ°ΠΊΡ Π·Π°ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°Π½ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΡΠ»Π΅ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΠΎΠ±ΡΠ΅ΠΌ, Π² ΡΡΠΎΠΌ Π²ΠΎΠΏΡΠΎΡΠ΅ Π»ΠΈΡΡ Π²Π°ΠΆΠ½ΠΎ Π½Π΅ ΡΠ΅ΡΡΡΡ Π±Π΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΠΎΡΠ»Π΅ΡΠ»ΠΎΠ²ΠΈΠ΅
ΠΠ°Π΄ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΡΠΎΠ²Π΅Ρ Π°Π²ΡΠΎΡΠΎΠ² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π²ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π² pom.xml ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π² Nexus Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΎΡΠΌΠ΅Π½ΡΠ». ΠΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π»ΡΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ³ΠΎΠ΄Ρ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΊΡΠΈΡΡΡΡΠ΅Π³ΠΎ Maven-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΠΎ Π·Π°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠ±ΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, ΠΏΠΎΠΊΠ° Π°Π΄ΠΌΠΈΠ½ Π΄ΠΎΠ±Π°Π²ΠΈΡ Π½ΡΠΆΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
UPD: ΠΠ°ΡΠΊΠ½ΡΠ»ΡΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ ΡΡΠ°ΡΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΡ ΠΎΠΆΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ.
Nexus: ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°, Π·Π°ΠΏΡΡΠΊ, Π΄Π΅ΠΏΠ»ΠΎΠΉ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ + NGINX ΠΈ SSL
Π£ Android-ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎΠ»ΠΎΠΌΠ°Π»ΡΡ βΠ΄Π΅ΠΏΠ»ΠΎΠΉβ ΡΠ΅ΡΠ΅Π· ΠΎΡΠΏΡΠ°Π²ΠΊΡ ΠΏΠΈΡΡΠΌΠ° Ρ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Gmail (Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΅ΡΡ Π΄ΠΎ ΠΌΠ΅Π½Ρ), ΠΈ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ Π±ΡΡΡΡΠ΅Π½ΡΠΊΠΎ βΠ½Π°ΠΊΠΎΡΡΡΠ»ΠΈΡΡβ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π»ΡΡ ΠΎΠ½ Π΄Π°Π²Π½ΠΎ, Π½ΠΎ ΡΠ΅ΠΉΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π±Π΅Π· Π²ΡΡΠΊΠΎΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ β ΠΏΡΠΎΡΡΠΎ ΡΡΠΊΠ°ΠΌΠΈ ΠΏΠΎΠ΄Π½ΡΡΡ, Π·Π°ΠΏΡΡΡΠΈΡΡ, ΡΡΠΎ Π±Ρ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΈΡΡ.
ΠΠ°ΠΏΡΡΠΊ Nexus ΠΈΠ· Docker
ΠΠ±Π½ΠΎΠ²Π»ΡΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ NGINX, ΠΈ ΠΏΠΎΠΊΠ° Π΅Π³ΠΎ ΡΡΠΎΠΏΠ°Π΅ΠΌ:
ΠΠ΅Π»Π°Π΅ΠΌ ΡΠ΅ΡΡΠΎΠ²ΡΠΉ Π·Π°ΠΏΡΡΠΊ Nexus:
ΠΠ΅ΡΠΎΠ»ΡΠ½ΡΠΉ Π»ΠΎΠ³ΠΈΠ½-ΠΏΠ°ΡΡ β admin:admin123, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΉΡΠΈ, ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠ°ΠΊ Π²ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΠΎΠ΄ Π°Π΄ΠΌΠΈΠ½ΠΎΠΌ:
ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ
ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ β ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² Repositories:
ΠΠ»ΠΈΠΊΠ°Π΅ΠΌ Create repository, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ raw(hosted) (ΡΠΌ. ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΡΡ>>>):
ΠΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΠΉΠ».
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ POST /v1/components, ΠΆΠΌΡΠΌ Try it out, ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΡΡΠΎ ΠΈ ΠΊΡΠ΄Π° Π±ΡΠ΄Π΅ΠΌ Π·Π°Π³ΡΡΠΆΠ°ΡΡ, Π½Π°ΠΌ ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Request URL:
Centos
Nexus ΡΠ²Π»ΡΒΠ΅ΡΒΡΡ ΠΏΠΎΠΏΡΒΠ»ΡΡΒΠ½ΡΠΌ ΠΌΠ΅Π½Π΅ΒΠ΄ΠΆΠ΅ΒΡΠΎΠΌ ΡΠ΅ΠΏΠΎΒΠ·ΠΈΒΡΠΎΒΡΠΈΒΠ΅Π² (repository manager). ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΒΠ·ΡΒΠ΅ΡΒΡΡ Π΄Π»Ρ Ρ ΡΠ°ΒΠ½Π΅ΒΠ½ΠΈΡ Π°ΡΡΠ΅ΒΡΠ°ΠΊΒΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΎΠΊΒΡΠΈ, Ρ.Π΅. Π²ΡΡ ΡΡΠΎ Π²ΡΠΊΠ°ΒΡΠΈΒΠ²Π°ΒΠ΅ΡΒΡΡ ΡΠ΅ΡΠ΅Π· Π½Π΅Π³ΠΎ, ΡΠΎΡ ΡΠ°ΒΠ½ΡΒΠ΅ΡΒΡΡ Π² Π½ΡΠΌ.
yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel createrepo
wget http://download.sonatype.com/nexus/3/latest-unix.tar.gz
vim /opt/nexus/bin/nexus.rc
vim /etc/systemd/system/nexus.service
[Unit]
Description=nexus service
After=network.target
[Service]
Type=forking
ExecStart=/opt/nexus/bin/nexus start
ExecStop=/opt/nexus/bin/nexus stop
User=nexus
Restart=on-abort
Π£ΠΌΠ΅Π½ΡΒΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΒΡΠ΅ΒΡΡΠ²ΠΎ ΠΏΠΎΡΡΠ΅Π±ΒΠ»ΡΒΠ΅ΒΠΌΠΎΠΉ ΠΎΠΏΠ΅ΒΡΠ°ΒΡΠΈΠ²ΒΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ:
vim /var/nexus/nexus-3.19.1-01/bin/nexus.vmoptions
ΠΌΠ΅Π½ΡΠ΅ΠΌ
-Xms2703m
-Xmx2703m
Π½Π°
-Xms512m
-Xmx512m
systemctl daemon-reload & & systemctl enable nexus
systemctl start nexus & & systemctl status nexus
WEB-ΠΈΠ½ΡΠ΅ΡΒΡΠ΅ΠΉΡ
Π΄Π»Ρ Π°Π²ΡΠΎΒΡΠΈΒΠ·Π°ΒΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΒΡΡΠ²Π΅ Π»ΠΎΠ³ΠΈΒΠ½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
admin
ΠΏΠ°ΡΠΎΠ»Ρ ΠΌΠΎΠΆΒΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΒΡΠ΅ΡΡ ΡΡΡ:
cat /opt/sonatype-work/nexus3/admin.password
ΡΠ°ΠΊΒΠΆΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΒΡΠ°ΒΠ½ΠΈΡ ΠΏΠ°ΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
Login : admin
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΠΎΠΉ
ΠΠ±ΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
ΠΠ°Π»Π΅Π΅ ΠΏΠ΅ΡΠ΅ΒΡ ΠΎΒΠ΄ΠΈΠΌ ΠΊ ΡΠΏΠΈΡΒΠΊΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π²:
Name: test-repo-epel
Π‘ΠΎΠ·Π΄Π°ΒΡΠΌ yum group
Name: yum-repo-group
Π΄ΠΎΠ±Π°Π²ΒΠ»ΡΒΠ΅ΠΌ Π² Π½Π΅Π³ΠΎ 2 ΡΠΎΠ·Π΄Π°Π½ΒΠ½ΡΡ Π½Π°ΠΌΠΈ ΠΏΡΠΎΠΊΒΡΠΈ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ.
Π²ΡΡ, ΡΠ΅ΠΏΠΎΒΠ·ΠΈΒΡΠΎΒΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½.
ΠΈ Π½Π° ΡΠ΅Π»Π΅ΒΠ²ΠΎΠΉ ΡΠ°ΡΒΠΊΠ΅ ΡΠΎΠ·Π΄Π°ΒΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
[Centos-7-Nexus]
baseurl = http://192.168.1.177:8081/repository/ yum-repo-group /
gpgcheck = 1
enabled=1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
name = Centos-Nexus
ΡΠΎΡ ΡΠ°ΒΠ½ΡΒΠ΅ΠΌ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ.
ΠΠ±ΡΠΈΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ docker:
Name: docker-private
type hosted
http: 8083
ΠΌΠΎΠΆΒΠ½ΠΎ Π΅ΡΡ Π΄ΠΎΠ±Π°ΒΠ²ΠΈΡΡ Π΄Π»Ρ https
ΠΠ°ΠΆΠΈΒΠΌΠ°ΒΠ΅ΠΌ save
ΠΠ°ΠΆΠΈΒΠΌΠ°ΒΠ΅ΠΌ save
ΠΠ°ΠΆΠΈΒΠΌΠ°ΒΠ΅ΠΌ save
Π½Π° ΡΠ΅Π»Π΅ΒΠ²ΠΎΠΉ ΡΠ°ΡΒΠΊΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ:
cat /etc/docker/daemon.json
<
«insecure-registries»: [«192.168.1.177:8081″,»192.168.1.177:8082″,»192.168.1.177:8083»],
«experimental»: true
>
ΠΠ°Π»Π΅Π΅ Π½Π΅ΠΎΠ±ΒΡ
ΠΎΒΠ΄ΠΈΒΠΌΠΎ Π·Π°Π»ΠΎΒΠ³ΠΈΒΠ½ΠΈΡΡΒΡΡ Π² nexus ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ:
docker login http://192.168.1.177:8082/repository/docker-group
. ΠΠΠΠΠ. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΒΠ·ΡΒΠ΅ΒΡΠ΅ ΠΏΡΠΎΠΊΒΡΠΈ, ΡΠΎ Π½Π΅ΠΎΠ±ΒΡ ΠΎΒΠ΄ΠΈΒΠΌΠΎ ΡΠ±ΡΠ°ΡΡ Π΅Π³ΠΎ, ΠΏΠ΅ΡΠ΅ΒΠ·Π°ΒΠΏΡΒΡΡΠΈΡΡ Π΄Π΅ΠΌΠΎΠ½, ΠΈ ΡΠ΅ΡΡΠ°ΡΒΡΠ°ΒΠ½ΡΡΡ docker(reload Π½Π΅ Ρ Π²Π°ΡΠΈΡ):
Sonatype Nexus
ΠΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π°ΡΡΠ΅ΡΠ°ΠΊΡΠ°ΠΌΠΈ, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ ΠΈ Docker-ΠΎΠ±ΡΠ°Π·Π°ΠΌΠΈ.
ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½Π° ΡΡΠ°ΡΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄ Π²Π²ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
ΠΠ°ΠΊΠΈΠ΅ Π±ΠΈΠ·Π½Π΅Ρ-Π·Π°Π΄Π°ΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ°ΡΡ
Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠΊΠΎΠ² ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ ΠΈ ΡΠ΅ΠΏΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΠΏΠΎΡΠ΅ΡΡ ΠΏΡΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ\ΠΈΠ»ΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈΠ·-Π·Π° Π²Π·Π»ΠΎΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΡΡΠ·Π²ΠΈΠΌΡΠ΅ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ.
Sonatype Nexus ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠΊΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΠΎΠ±ΠΈΡΠ°ΡΡ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ Π±Π΅Π· ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π²Π½Π΅ΡΠ½ΠΈΠΌ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°ΠΌ Π±ΠΈΠ½Π°ΡΠ½ΡΡ JAR-Π°ΡΡΠ΅ΡΠ°ΠΊΡΠΎΠ².
ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ
ΠΡΠ±ΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½Π° ΡΡΠ°ΡΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΈΠ·Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ» Nexus ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ ΠΏΡΠΈΠ½ΡΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² Π²Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠΎΠ½ΡΡΠΎΠ»Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ²
ΠΠΎΠ³Π°ΡΡΠΉ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ»ΠΈΡΠΈΠΊ
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Π½Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π΄ Π²Π²ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΡΠΊΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
Π’ΠΎΡΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ
Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΠΌΠΈ ΠΎΡΡΠ΅ΡΠ°ΠΌΠΈ
ΠΡΠΆΠ½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΈΠ»ΠΈ ΡΠΎΠ²Π΅Ρ?
Π£ Π²Π°Ρ Π΅ΡΡΡ Π²ΠΎΠΏΡΠΎΡ? ΠΠ΅ ΡΠ²Π΅ΡΠ΅Π½Ρ ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ? ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ΅ ΡΠΊΡΠΏΠ΅ΡΡΠ½ΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π² Π±ΠΈΠ·Π½Π΅Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Ρ ?
Π ΡΠ°ΠΌΠΊΠ°Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ 30-ΠΌΠΈΠ½ΡΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠ»ΡΡΠ°ΡΠΈΠΈ, ΠΎΡΠ²Π΅ΡΠΈΠΌ Π½Π° Π»ΡΠ±ΡΠ΅ Π²Π°ΡΠΈ Π²ΠΎΠΏΡΠΎΡΡ