CentOS 8 compila y configura registros Nexus3

Visión de conjunto

teoría

Si no está interesado, simplemente puede ignorarlo. Nexus3, la versión 3. * de nexus, tiene funciones muy poderosas y es compatible con muchos idiomas y tipos de almacenes. Tome el 3.29.2-02 instalado en este artículo como ejemplo, es compatible con: apt, bower, cocoapods, conan , conda, docker, gitlfs, go, helm, maven2, npm, nuget, p2, pypi, r, raw, rubygems, yum.

Roles y permisos de usuario

Tarea de programación de Nexus

Nexus proporciona una serie de tareas de programación configurables para facilitar a los usuarios la gestión del sistema. El usuario puede configurar la expresión cron para que se ejecuten estas tareas. La tarea programada se ejecutará en segundo plano cuando sea apropiado. Para crear una tarea programada, haga clic en "Tareas programadas" en el menú de navegación de la izquierda, luego haga clic en el botón Agregar en la interfaz de la derecha y complete el contenido relevante de acuerdo con las indicaciones de la página.

Nexus incluye los siguientes tipos de tareas de programación:

  • Descargar índices: descargar índices remotos para el almacén de agentes
  • Vaciar papelera: vacía la papelera de reciclaje de Nexus, algunas operaciones mueven archivos a la papelera de reciclaje
  • Desalojar elementos proxy no utilizados de las memorias caché del repositorio: elimine las memorias caché de componentes no utilizadas durante mucho tiempo en el almacén proxy
  • Caducar la caché del repositorio: Nexus mantiene la información del almacén remoto para el almacén proxy a fin de evitar el tráfico de red innecesario. Esta tarea borra esta información para obligar a Nexus a recuperar la información del almacén remoto.
  • Publicar índices: publique índices de almacén en un formato que pueda ser utilizado por m2eclipse y otros Nexus.
  • Purgar la línea de tiempo de Nexus: elimine el archivo de línea de tiempo de Nexus, que se utiliza para crear la fuente RSS del sistema
  • Reconstruir archivos de metadatos de Maven: vuelva a crear los archivos de metadatos del almacén en función del contenido del almacén maven-metadata.xmly vuelva a crear la suma de comprobación md5 y sha1 de cada archivo
  • Repositorios ReIndex: compile índices para almacenes
  • Eliminar instantáneas de repositorios: elimine los componentes de instantáneas del repositorio de forma configurable
  • Synchronize Shadow Repository: sincroniza el contenido del almacén virtual (servicio basado en Maven1)

instalación

Descargue el archivo comprimido:
wget
desempaquetar:
tar -zxvf nexus-3.29.2-02-unix.tar.gz
En el directorio especificado:
mv nexus-3.29.2-02 /usr/local/nexus3
Configure su navegador para acceder a la IP y el número de puerto:
vim /usr/local/nexus3/etc/nexus-default.properties
se application-host=0.0.0.0modificará application-host=<your_ip>o utilizará el puerto predeterminado de 8081.

Cambie al directorio bin:
cd /usr/local/nexus3/bin/

puesta en marcha:
./nexus start

En este punto, debería poder abrir el navegador para acceder a la dirección que acaba de configurar:http://<ip>:8081

Si no funciona, generalmente el firewall no está apagado. Dado que es un servidor privado integrado en la intranet, puede apagar el firewall de manera segura:
systemctl stop firewalld

Configurar para que se inicie automáticamente después de arrancar:
systemctl enable nexus

Si se informa un error:
Unit nexus.service could not be found.

Luego cree una conexión a /etc/init.d:
ln -s /usr/local/nexus3/bin/nexus /etc/init.d/nexus

Configurar para arrancar:
systemctl enable nexus

Producción:

nexus.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable nexus

Demuestra éxito.

Interfaz de instalación exitosa:
Inserte la descripción de la imagen aquí

Agregar el almacén de proxy de Alibaba Cloud

Como se muestra en la figura: Se
Inserte la descripción de la imagen aquí
puede observar que existen tres tipos de almacenes:

  • Alojado: almacén local, puede implementar sus propios componentes en este tipo de almacén. Por ejemplo, la biblioteca de segunda parte de la empresa;
  • Proxy: almacén de proxy, utilizado para proxy de almacenes públicos remotos, como el almacén central de maven;
  • Grupo: grupo de almacén, utilizado para fusionar varios almacenes alojados / proxy. Cuando el proyecto necesita hacer referencia a varios recursos del repositorio, solo necesita poner estos recursos en un grupo y hacer referencia a este grupo;

Tenga en cuenta que primero debe iniciar sesión:
Inserte la descripción de la imagen aquí
Después de iniciar sesión, solo para configurar los permisos:
Inserte la descripción de la imagen aquí
Agregar almacén:
Inserte la descripción de la imagen aquí
debido a que el agente se agrega Ali almacenamiento en la nube, elija Tipo de proxy: se
Inserte la descripción de la imagen aquí
deben configurar tres piezas de información:
Inserte la descripción de la imagen aquí
la primera representa la unicidad del nombre , puede ingresar aliyun; el
primero es la dirección. Dado que es Alibaba Cloud, ingrese http://maven.aliyun.com/nexus/content/groups/public/; el
tercero es la ubicación de almacenamiento. Haga clic en el menú desplegable lista y seleccione predeterminado.
Inserte la descripción de la imagen aquí
En este punto, el almacén proxy de Alibaba Cloud se ha agregado correctamente, pero no se recomienda usarlo directamente. El propósito de construir un servidor privado nexus no es solo copiar el jar del almacén maven de Alibaba Cloud en el almacén del servidor privado. en su propia intranet. Esto no mejora la velocidad de compilación.
por favor observe la siguiente parte.

Combinar settings.xml

El almacén de tipo alojado mencionado anteriormente, el escenario aplicable es principalmente que el Proyecto A necesita hacer referencia al archivo jar del Proyecto B y luego descargarlo del almacén del servidor privado nexus en la intranet.
Por lo tanto, también necesitamos agregar un almacén de tipo alojado, que es similar a los pasos de agregar un almacén proxy anteriores, excepto que este tipo de almacén solo necesita configurar dos parámetros, un nombre y una ubicación de almacenamiento que represente la unicidad del almacén. .

Pregunta, ¿por qué Nexus ofrece almacenes de tipo grupal?
Imagínese: en casos excepcionales, si el paquete jar requerido no se puede encontrar en Alibaba Cloud, ¿aún necesita agregar almacenes proxy con otras direcciones? ¿Tiene que agregar varias direcciones espejo de almacén al archivo de configuración settings.xml?
Por tanto, se introduce el almacén tipo Grupo. Hay tres elementos de configuración que deben completarse, un nombre único y una dirección de almacenamiento, y un almacén subordinado (repositorios miembros):
Inserte la descripción de la imagen aquí
representaciones: el
Inserte la descripción de la imagen aquí
lado izquierdo es el almacén alternativo, el lado derecho es el almacén seleccionado, preste atención a la prioridad. orden .

Representaciones finales:
Inserte la descripción de la imagen aquí
seleccione el grupo, haga clic en copiar, obtenga http://xxx:8081/repository/group/la dirección como :, póngala settings.xmlen:

<mirrors>
	<mirror>
	    <id>nexus</id>
	    <mirrorOf>*</mirrorOf>
	    <name>aliyun</name>
	    <url>http://xxx:8081/repository/group/</url>
	</mirror>
</mirrors>

Referencia: use Nexus3 para construir el servidor privado de Maven + cargar el paquete jar de terceros en el almacén local de Maven

Configurar los parámetros de JVM

Cambie al directorio /usr/local/nexus3/bin, hay un nexus.vmoptionsarchivo, que es muy similar a los parámetros de inicio de JVM o al archivo de configuración de referencia de JVM de IDEA.

No se pudo transferir el artefacto 401 no autorizado

La settings.xmletiqueta del servidor debe configurarse en, donde el nombre de usuario y la contraseña se establecen durante el proceso de instalación:

<servers>
	<server>
		<id>snapshots</id>
		<username>admin</username>
		<password>admin</password>
	</server>
	<server>
		<id>releases</id>
		<username>admin</username>
		<password>admin</password>
	</server>
</servers>

mvn ERROR xxx por defecto falta

mvn cleanError de ejecución:

[ERROR] Error executing Maven.
[ERROR] 2 problems were encountered while building the effective settings
[ERROR] 'mirrors.mirror.url' for default is missing @ C:\Users\johnn\.m2\settings.xml
[ERROR] 'mirrors.mirror.mirrorOf' for default is missing @ C:\Users\johnn\.m2\settings.xml

La razón es que hay una etiqueta vacía, simplemente elimínela:

<mirror>
</mirror>

Subir al servidor privado de Nexus3

Utilice mvn deploynombres para cargar el jar local al servidor privado nexus.

Si se informa un error:
Failed to deploy artifacts: Could not transfer artifact XXX from/to releases (http://xxxx:8081/repository/maven-releases/) 400 Bad Request

Análisis de errores:
mvn deployse produce un error 400 cuando el paquete jar ya existe en el servidor privado nexus3. El motivo es que la biblioteca predeterminada de la versión no permite la implementación repetida, es decir, la opción predeterminada es deshabilitar la implementación .

Solución: inicie
sesión en el servidor privado, busque el almacén donde se informa el error, por ejemplo maven-releases, y modifique la política de implementación (Política de implementación) para Permitir la reimplementación :
Inserte la descripción de la imagen aquí

problema de implementación de mvn

se almacenó en caché en el repositorio local, la resolución no se volverá a intentar hasta que la
Inserte la descripción de la imagen aquí
solución:
modifique el settings.xmlarchivo y agregue el almacén <updatePolicy>always</updatePolicy>para forzar que la biblioteca dependiente se actualice cada vez.

Eliminar repositorio inútil
Inserte la descripción de la imagen aquí

referencia

configuración del servidor privado nexus

Supongo que te gusta

Origin blog.csdn.net/lonelymanontheway/article/details/113615243
Recomendado
Clasificación