2017-01-03 1 views
1

hinzufügen externes Plugin Sonarqube

I Sonarqube in einem Docker Behälter mit dieser compose Docker Datei ausgeführt bin: docker-compose

ich ein externes Plugin (JAR-Datei) hinzufügen möchten. Ich konnte es nicht schaffen. Irgendwelche Ideen?

+0

Sie können die Struktur Ihrer referenzierten docker-compose-Datei verfolgen und sie über ein Volume an Ihren Container binden. – n2o

+0

Da bin ich sehr neu für Docker, weiß immer noch nicht, wie man das macht. – ridi

+0

Okay. Sie möchten also Ihrem Service "Sonarqube" ein Glas hinzufügen, ja? Wo möchten Sie es in diesem Service speichern (d. H. Welcher Pfad sollte zu Ihrem Behälter im Container führen)? – n2o

Antwort

1

Kopieren Sie einfach Ihre JAR-Dateien in Ihren lokalen Ordner "sonarqube_extensions/plugins", der neben Ihrer docker-compose.yml-Datei vorhanden sein sollte, und sie werden entsprechend Ihrer referenzierten docker-compose.yml-Datei in Ihren Container eingebunden.

Alte Antwort

Sie können Ihre bestehende Docker-compose.yml Datei ändern. Angenommen, Ihre JAR-Dateien befinden sich in einem Ordner mit dem Namen "external_jars" neben der Compose-Datei und Sie möchten, dass diese JAR-Dateien im Container unter zum Beispiel /opt/sonarqube/external_jars verfügbar sind (SonarQube ist mir nicht bekannt und ich weiß nicht, wie das richtig ist) Struktur sollte aussehen). Dann können Sie eine Zeile zu diesem Auszug aus Ihrer compose Datei hinzufügen:

sonarqube: 
    image: sonarqube 
    ports: 
     - "9000:9000" 
    networks: 
     - sonarnet 
    environment: 
     - SONARQUBE_JDBC_URL=jdbc:postgresql://db:5432/sonar 
    volumes: 
     - external_jars:/opt/sonarqube/external_jars # <-- Added this line 
     - sonarqube_conf:/opt/sonarqube/conf 
     - sonarqube_data:/opt/sonarqube/data 
     - sonarqube_extensions:/opt/sonarqube/extensions 
     - sonarqube_bundled-plugins:/opt/sonarqube/lib/bundled-plugins 

Oder Sie fügen Sie einfach die Gläser lokal in den Ordner „sonarqube_extensions“, ob dies der richtige Ordner ist. Ich weiß nicht, was du erreichen willst, deshalb kann ich nur raten, was du versuchst.

"Volumes" sind verknüpfte Ordner zwischen Ihrem lokalen Computer (auf dem die Docker-Engine ausgeführt wird) und dem Container. Die Syntax "sonarqube_extensions:/opt/sonarqube/extensions" bedeutet: Ordnen Sie dem Container den Inhalt von "sonarqube_extensions" der local Maschine zu und machen Sie ihn über den Pfad "/ opt/sonarqube/extensions" zugänglich.

+0

Danke @ n2o. Das hat funktioniert. Eine Präzision allerdings: Der lokale Ordner "sonarqube_extensions" wird in/var/lib/docker erstellt – ridi

Verwandte Themen