Apache Archiva (Version 2.2.5): Unterschied zwischen den Versionen
(30 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 5: | Zeile 5: | ||
Hier wird die Installation unter Verwendung von [[Tomcat installation per tarball (unterschiedliche Versionen)|Apache Tomcat]] beschrieben. | Hier wird die Installation unter Verwendung von [[Tomcat installation per tarball (unterschiedliche Versionen)|Apache Tomcat]] beschrieben. | ||
Pfade siehe: [[Tomcat_installation_per_apt-get_(Linux)#Pfade|Tomcat_installation_per_apt-get_(Linux)#Pfade]] | |||
=== Tomcat Bibliotheken === | === Tomcat Bibliotheken === | ||
Zeile 13: | Zeile 15: | ||
<pre> | <pre> | ||
cd ~/downloads/ | cd ~/downloads/ | ||
wget https://mirror.klaus-uwe.me/apache | wget https://mirror.klaus-uwe.me/apache/db/derby/db-derby-10.14.2.0/db-derby-10.14.2.0-lib.tar.gz | ||
tar -xzf db-derby-*.tar.gz | tar -xzf db-derby-*.tar.gz | ||
sudo cp db-derby-10.14.2.0-lib/lib/derby.jar / | sudo cp db-derby-10.14.2.0-lib/lib/derby.jar /usr/share/java/derby-10.14.2.0.jar | ||
cd /usr/share/tomcat9/lib/ | |||
sudo ln -sfn ../../java/derby-10.14.2.0.jar derby.jar | |||
</pre> | </pre> | ||
Zeile 23: | Zeile 27: | ||
<pre> | <pre> | ||
wget https://repo1.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar | wget https://repo1.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar | ||
sudo cp activation-1.1.1.jar / | sudo cp activation-1.1.1.jar /usr/share/java/activation-1.1.1.jar | ||
cd /usr/share/tomcat9/lib/ | |||
sudo ln -sfn ../../java/activation-1.1.1.jar activation.jar | |||
</pre> | </pre> | ||
Zeile 31: | Zeile 37: | ||
<pre> | <pre> | ||
wget https://repo1.maven.org/maven2/javax/mail/mail/1.4.3/mail-1.4.3.jar | wget https://repo1.maven.org/maven2/javax/mail/mail/1.4.3/mail-1.4.3.jar | ||
sudo cp mail-1.4.3.jar / | sudo cp mail-1.4.3.jar /usr/share/java/mail-1.4.3.jar | ||
cd /usr/share/tomcat9/lib/ | |||
sudo ln -sfn ../../java/mail-1.4.3.jar mail.jar | |||
cd / | |||
sudo | |||
</pre> | </pre> | ||
Zeile 43: | Zeile 46: | ||
=== Variablen setzen === | === Variablen setzen === | ||
Skript $ | Skript $TOMCAT_HOME/bin/setenv.sh anlegen / erweitern | ||
<pre> | <pre> | ||
sudo vi / | sudo vi /usr/share/tomcat9/bin/setenv.sh | ||
</pre> | </pre> | ||
und mit folgendem Inhalt erweitern: | und mit folgendem Inhalt erweitern: | ||
{{note|CATALINA_HOME und CATALINA_BASE notwendig?}} | |||
<pre> | <pre> | ||
export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$ | export CATALINA_HOME="/usr/share/tomcat9" | ||
export CATALINA_BASE="/var/lib/tomcat9" | |||
export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$CATALINA_BASE" | |||
</pre> | </pre> | ||
Zeile 58: | Zeile 66: | ||
<pre> | <pre> | ||
sudo chmod 750 / | sudo chmod 750 /usr/share/tomcat9/bin/setenv.sh | ||
sudo chown tomcat:tomcat / | sudo chown tomcat:tomcat /usr/share/tomcat9/bin/setenv.sh | ||
</pre> | </pre> | ||
Zeile 69: | Zeile 77: | ||
</pre> | </pre> | ||
In '' | In ''CATALINA_HOME'' auf dem selben Level wie ''bin'', ''lib'' etc. ein Verzeichnis ''archiva'' erstellen: | ||
<pre> | <pre> | ||
sudo -u tomcat mkdir / | sudo -u tomcat mkdir /usr/share/tomcat9/archiva/ | ||
</pre> | </pre> | ||
Heruntergeladene ''WAR''-Datei in gerade erstelltes Verzeichnis kopieren: | Heruntergeladene ''WAR''-Datei in gerade erstelltes Verzeichnis kopieren: | ||
<pre> | <pre> | ||
sudo -u tomcat cp ~/temp/apache-archiva-2.2.5.war / | sudo -u tomcat cp ~/temp/apache-archiva-2.2.5.war /usr/share/tomcat9/archiva/ | ||
</pre> | </pre> | ||
=== | === archiva.xml === | ||
Eine Datei ''archiva.xml'' im Konfigurationsverzeichnis ''$CATALINA_BASE/conf'' anlegen: | |||
<pre> | <pre> | ||
sudo -u tomcat | sudo -u tomcat vi /var/lib/tomcat9/conf/Catalina/localhost/archiva.xml | ||
</pre> | </pre> | ||
Zeile 92: | Zeile 100: | ||
<pre> | <pre> | ||
<Context path="/archiva" docBase="${catalina.home}/archiva/apache-archiva-2.2.5.war"> | <Context path="/archiva" docBase="${catalina.home}/archiva/apache-archiva-2.2.5.war"> | ||
<!-- | |||
<JarScanner> | <JarScanner> | ||
<JarScanFilter tldSkip="${tomcat.util.scan.StandardJarScanFilter.jarsToSkip}, derbyLocale*.jar"/> | <JarScanFilter tldSkip="${tomcat.util.scan.StandardJarScanFilter.jarsToSkip}, derbyLocale*.jar"/> | ||
</JarScanner> | </JarScanner> | ||
--> | |||
<Resource name="jdbc/users" | <Resource name="jdbc/users" | ||
Zeile 117: | Zeile 127: | ||
</Context> | </Context> | ||
</pre> | </pre> | ||
=== context.xml === | |||
Die Datei ''$CATALINA_BASE/conf/context.xml'' anpassen: | |||
<pre> | <pre> | ||
sudo vi / | sudo vi /var/lib/tomcat9/conf/context.xml | ||
</pre> | </pre> | ||
Zeile 125: | Zeile 139: | ||
<?xml version="1.0" encoding="UTF-8"?> | <?xml version="1.0" encoding="UTF-8"?> | ||
<Context> | <Context> | ||
... | |||
<JarScanner | <JarScanner scanManifest="false"/> | ||
... | |||
</Context> | </Context> | ||
</pre> | </pre> | ||
=== repository.xml === | |||
{{note|TODO}} | |||
<pre> | |||
sudo vi /var/lib/tomcat9/conf/repository.xml | |||
</pre> | |||
<pre> | |||
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-armhf | |||
</pre> | |||
[https://github.com/apache/archiva/blob/master/archiva-modules/archiva-web/archiva-webapp/src/main/resources/META-INF/spring-context.xml https://github.com/apache/archiva/blob/master/archiva-modules/archiva-web/archiva-webapp/src/main/resources/META-INF/spring-context.xml] | |||
== Apache Konfiguration == | == Apache Konfiguration == | ||
Zeile 164: | Zeile 190: | ||
sudo service apache2 reload | sudo service apache2 reload | ||
</pre> | </pre> | ||
== Logrotate == | |||
=== /etc/logrotate.d/archiva === | |||
Die Datei | |||
<pre> | |||
sudo vi /etc/logrotate.d/archiva | |||
</pre> | |||
anlegen und mit | |||
<pre> | |||
/var/log/tomcat9/archiva-audit.log /var/log/tomcat9/archiva.log /var/log/tomcat9/archiva-security-audit.log { | |||
copytruncate | |||
daily | |||
rotate 7 | |||
compress | |||
missingok | |||
size 100M | |||
} | |||
</pre> | |||
befüllen. | |||
=== /etc/cron.daily/tomcat9 === | |||
In der Datei | |||
<pre> | |||
sudo vi /etc/cron.daily/tomcat9 | |||
</pre> | |||
die Zeile | |||
<pre> | |||
find /var/log/$NAME/ -name \*.$EXT -daystart -mtime +0 -print0 \ | |||
</pre> | |||
durch | |||
<pre> | |||
find /var/log/$NAME/ \( -name \*.$EXT -not -name archiva\*.$EXT \) -daystart -mtime +0 -print0 \ | |||
</pre> | |||
ersetzen, damit die Archiva-Logdateien ignoriert werden. | |||
== Debugging == | == Debugging == | ||
Zeile 191: | Zeile 264: | ||
</pre> | </pre> | ||
== Probleme == | |||
=== org.apache.jackrabbit.core.config.ConfigurationException: Failed to create workspace directory: default === | |||
==== Links ==== | |||
[https://jackrabbit.apache.org/jcr/jackrabbit-configuration.html https://jackrabbit.apache.org/jcr/jackrabbit-configuration.html] | |||
=== 24-Jan-2021 18:33:40.961 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class [org.springframework.web.context.ContextLoaderListener] java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener === | |||
Probleme mit CLASSPATH??? | |||
''CATALINA_HOME vs. CATALINA_BASE' | |||
== Links == | == Links == | ||
Zeile 199: | Zeile 286: | ||
[https://cwiki.apache.org/confluence/display/ARCHIVA/Archiva+on+Tomcat https://cwiki.apache.org/confluence/display/ARCHIVA/Archiva+on+Tomcat] | [https://cwiki.apache.org/confluence/display/ARCHIVA/Archiva+on+Tomcat https://cwiki.apache.org/confluence/display/ARCHIVA/Archiva+on+Tomcat] | ||
[https://fabianlee.org/2018/02/03/maven-installing-a-private-maven-repository-on-ubuntu-using-apache-archiva/ https://fabianlee.org/2018/02/03/maven-installing-a-private-maven-repository-on-ubuntu-using-apache-archiva/] | |||
Zurück zu [[Apache Archiva (verschiedene Versionen)#Archiva Versionen|Apache Archiva (verschiedene Versionen)]] | Zurück zu [[Apache Archiva (verschiedene Versionen)#Archiva Versionen|Apache Archiva (verschiedene Versionen)]] |
Aktuelle Version vom 4. Januar 2023, 13:10 Uhr
Noch in Bearbeitung
Voraussetzungen
Hier wird die Installation unter Verwendung von Apache Tomcat beschrieben.
Pfade siehe: Tomcat_installation_per_apt-get_(Linux)#Pfade
Tomcat Bibliotheken
derby.jar
Von https://db.apache.org/derby/derby_downloads.html die aktuellste Derby Datenbank runterladen:
cd ~/downloads/ wget https://mirror.klaus-uwe.me/apache/db/derby/db-derby-10.14.2.0/db-derby-10.14.2.0-lib.tar.gz tar -xzf db-derby-*.tar.gz sudo cp db-derby-10.14.2.0-lib/lib/derby.jar /usr/share/java/derby-10.14.2.0.jar cd /usr/share/tomcat9/lib/ sudo ln -sfn ../../java/derby-10.14.2.0.jar derby.jar
activation.jar
Von https://mvnrepository.com/artifact/javax.activation/activation/1.1.1 unter Repository runterladen:
wget https://repo1.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar sudo cp activation-1.1.1.jar /usr/share/java/activation-1.1.1.jar cd /usr/share/tomcat9/lib/ sudo ln -sfn ../../java/activation-1.1.1.jar activation.jar
mail.jar
Von https://mvnrepository.com/artifact/javax.mail/mail/1.4.3 unter Repository runterladen:
wget https://repo1.maven.org/maven2/javax/mail/mail/1.4.3/mail-1.4.3.jar sudo cp mail-1.4.3.jar /usr/share/java/mail-1.4.3.jar cd /usr/share/tomcat9/lib/ sudo ln -sfn ../../java/mail-1.4.3.jar mail.jar
Installation
Variablen setzen
Skript $TOMCAT_HOME/bin/setenv.sh anlegen / erweitern
sudo vi /usr/share/tomcat9/bin/setenv.sh
und mit folgendem Inhalt erweitern:
CATALINA_HOME und CATALINA_BASE notwendig?
export CATALINA_HOME="/usr/share/tomcat9" export CATALINA_BASE="/var/lib/tomcat9" export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$CATALINA_BASE"
Falls die Datei neu angelegt wurde, muss sie noch ausführbar gemacht werden:
sudo chmod 750 /usr/share/tomcat9/bin/setenv.sh sudo chown tomcat:tomcat /usr/share/tomcat9/bin/setenv.sh
apache-archiva-*.*.*.war
Unter https://archiva.apache.org/download.cgi die aktuellste Version suchen und herunterladen:
wget https://mirror.klaus-uwe.me/apache/archiva/2.2.5/binaries/apache-archiva-2.2.5.war
In CATALINA_HOME auf dem selben Level wie bin, lib etc. ein Verzeichnis archiva erstellen:
sudo -u tomcat mkdir /usr/share/tomcat9/archiva/
Heruntergeladene WAR-Datei in gerade erstelltes Verzeichnis kopieren:
sudo -u tomcat cp ~/temp/apache-archiva-2.2.5.war /usr/share/tomcat9/archiva/
archiva.xml
Eine Datei archiva.xml im Konfigurationsverzeichnis $CATALINA_BASE/conf anlegen:
sudo -u tomcat vi /var/lib/tomcat9/conf/Catalina/localhost/archiva.xml
XML-Versionszeile weglassen / WAR-Dateiname muss angepasst werden / URL zur Datenbank muss noch angepasst werden
Und folgenden Inhalt einfügen:
<Context path="/archiva" docBase="${catalina.home}/archiva/apache-archiva-2.2.5.war"> <!-- <JarScanner> <JarScanFilter tldSkip="${tomcat.util.scan.StandardJarScanFilter.jarsToSkip}, derbyLocale*.jar"/> </JarScanner> --> <Resource name="jdbc/users" auth="Container" type="javax.sql.DataSource" username="sa" password="" driverClassName="org.apache.derby.jdbc.EmbeddedDriver" url="jdbc:derby:${catalina.base}/archiva/database/users;create=true" /> <Resource name="jdbc/archiva" auth="Container" type="javax.sql.DataSource" username="sa" password="" driverClassName="org.apache.derby.jdbc.EmbeddedDriver" url="jdbc:derby:${catalina.base}/archiva/database/archiva;create=true" /> <Resource name="mail/Session" auth="Container" type="javax.mail.Session" mail.smtp.host="localhost"/> </Context>
context.xml
Die Datei $CATALINA_BASE/conf/context.xml anpassen:
sudo vi /var/lib/tomcat9/conf/context.xml
<?xml version="1.0" encoding="UTF-8"?> <Context> ... <JarScanner scanManifest="false"/> ... </Context>
repository.xml
TODO
sudo vi /var/lib/tomcat9/conf/repository.xml
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-armhf
Apache Konfiguration
Bis hier
Konfigurationsdatei anlegen
cd /etc/apache2/sites-available/ sudo vi archiva.conf
und mit folgenden Inhalt befüllen:
<VirtualHost *:80> ServerName archiva.kirner.or.at DocumentRoot /var/www/ ProxyPass / http://127.0.0.1:8080/archiva/ ProxyPassReverse / http://127.0.0.1:8080/archiva/ ErrorLog ${APACHE_LOG_DIR}/archiva.kirner.or.at-error.log CustomLog ${APACHE_LOG_DIR}/archiva.kirner.or.at-access.log combined </VirtualHost>
Danach Konfiguration aktivieren und Apache neustarten:
sudo a2ensite archiva sudo service apache2 reload
Logrotate
/etc/logrotate.d/archiva
Die Datei
sudo vi /etc/logrotate.d/archiva
anlegen und mit
/var/log/tomcat9/archiva-audit.log /var/log/tomcat9/archiva.log /var/log/tomcat9/archiva-security-audit.log { copytruncate daily rotate 7 compress missingok size 100M }
befüllen.
/etc/cron.daily/tomcat9
In der Datei
sudo vi /etc/cron.daily/tomcat9
die Zeile
find /var/log/$NAME/ -name \*.$EXT -daystart -mtime +0 -print0 \
durch
find /var/log/$NAME/ \( -name \*.$EXT -not -name archiva\*.$EXT \) -daystart -mtime +0 -print0 \
ersetzen, damit die Archiva-Logdateien ignoriert werden.
Debugging
Für detailiertere Fehlemeldungen in der Datei $CATALINA_BASE/webapps/archiva/WEB-INF/classes/log4j2.xml im jeweiligen Bereich (appenders bzw. loggers) folgende Zeilen hinzufügen:
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10_1/webapps/archiva/WEB-INF/classes/log4j2.xml
<appenders> ... <Console name="console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> ... </appenders> </loggers> ... <logger name="org.springframework.web" level="debug"> <appender-ref ref="console"/> </logger> ... </loggers>
Probleme
org.apache.jackrabbit.core.config.ConfigurationException: Failed to create workspace directory: default
Links
https://jackrabbit.apache.org/jcr/jackrabbit-configuration.html
24-Jan-2021 18:33:40.961 SCHWERWIEGEND [main] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class [org.springframework.web.context.ContextLoaderListener] java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
Probleme mit CLASSPATH???
CATALINA_HOME vs. CATALINA_BASE'
Links
https://archiva.apache.org/index.cgi
https://archiva.apache.org/docs/2.2.5/adminguide/webapp.html
https://cwiki.apache.org/confluence/display/ARCHIVA/Archiva+on+Tomcat
Zurück zu Apache Archiva (verschiedene Versionen)