Apache Archiva (Version 2.2.5)

Aus Tutorials
Zur Navigation springen Zur Suche springen

Noch in Bearbeitung


Voraussetzungen

Hier wird die Installation unter Verwendung von Apache Tomcat beschrieben.

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 /opt/tomcat/tomcat10_0_0/tomcat10_1/lib/derby-10.14.2.0.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 /opt/tomcat/tomcat10_0_0/tomcat10_1/lib/

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 /opt/tomcat/tomcat10_0_0/tomcat10_1/lib/
cd /opt/tomcat/tomcat10_0_0/tomcat10_1/lib/
sudo chown tomcat:tomcat derby-10.14.2.0.jar activation-1.1.1.jar mail-1.4.3.jar

Installation

Variablen setzen

Skript $TOMCAT_BASE/bin/setenv.sh anlegen / erweitern

sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/bin/setenv.sh

und mit folgendem Inhalt erweitern:

export CATALINA_OPTS="-Dappserver.home=$CATALINA_HOME -Dappserver.base=$CATALINA_HOME"

Falls die Datei neu angelegt wurde, muss sie noch ausführbar gemacht werden:

sudo chmod 750 /opt/tomcat/tomcat10_0_0/tomcat10/bin/setenv.sh
sudo chown tomcat:tomcat /opt/tomcat/tomcat10_0_0/tomcat10/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 TOMCAT_HOME auf dem selben Level wie bin, lib etc. ein Verzeichnis archiva erstellen:

sudo -u tomcat mkdir /opt/tomcat/tomcat10_0_0/tomcat10_1/archiva

Heruntergeladene WAR-Datei in gerade erstelltes Verzeichnis kopieren:

sudo -u tomcat cp ~/temp/apache-archiva-2.2.5.war /opt/tomcat/tomcat10_0_0/tomcat10_1/archiva/

archiva.xml

Eine Datei archiva.xml im Konfigurationsverzeichnis conf anlegen:

sudo -u tomcat vi /opt/tomcat/tomcat10_0_0/tomcat10_1/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

TODO: Funktioniert noch nicht - noch immer FileNotFoundException's

sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/conf/context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
    <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>

    <JarScanner>
        <JarScanFilter tldSkip="${tomcat.util.scan.StandardJarScanFilter.jarsToSkip}, derby*.jar"/>
    </JarScanner>
</Context>

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

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>

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)