2012-06-27 6 views

Antwort

9

Jenkins kann seine URL nicht selbst bestimmen. Wenn also vollständige Links erstellt werden müssen, wird die URL verwendet. Selbst wenn Sie die falsche URL angeben, sollte dies die Art und Weise, wie Jenkins funktioniert, nicht beeinflussen. Es hat sicherlich keine Auswirkung auf die URL, die Sie in Ihrem Browser eingeben, um sich mit dem Jenkins-Server zu verbinden. Sie können entweder http://localhost:8080 angeben (wenn Sie von Ihrem Computer aus eine Verbindung herstellen und vorausgesetzt, Sie haben Jenkins auf Port 8080 gestartet) oder http://<machine_hostname>:8080, wenn Sie von einem beliebigen Standort aus eine Verbindung herstellen.

Also egal, was Sie angeben, hat es keine Auswirkungen auf die Verbindung zu Jenkins, daher http://name_of_my_machine.jenkins:8080/ wird nicht funktionieren, wie .jenkins ist nicht Teil des Namens (z. B. ping name_of_my_machine.jenkins wird nicht gefunden den Host).

+0

Was meinst du mit ~ "** : **"? Ich möchte auf meine Jenkins-Adresse außerhalb meines LANs zugreifen. Wie kann ich das einrichten? –

+0

Das Setzen der falschen URL in der Konfiguration kann Probleme in Jenkins verursachen. Für mich funktionierte Builds gut, aber die Schaltflächen "Fortfahren" oder "Abbrechen" in Pipelines (wenn Sie eine "Eingabe" -Richtlinie getroffen haben) funktionierten nicht. Ich fand heraus, dass Jenkins dachte, dass seine URL http://1.2.3.4 war, obwohl es tatsächlich https://example.com war, dass diese Ajax-Aufrufe zum Fortfahren oder Abbrechen vom Browser blockiert wurden. – user3399551

2

Meinst du die Option in der E-Mail-Konfiguration? Dies ist nur zum Generieren der Links in E-Mails, die Jenkins sendet (siehe die Hilfe für die Option - klicke auf das Symbol mit dem Fragezeichen). Wenn Sie nach dem Ändern nicht mehr auf Ihren Server zugreifen können, muss es sich um etwas anderes handeln.

0

Immer wenn Jenkins eine URL erstellen muss, die auf sich selbst verweist, nimmt Jenkins sie von der Einstellung "Jenkins URL" in der globalen Konfiguration ab.

Jenkins könnte versuchen, die URL durch z.B. den Hostnamen holen und ihn mit dem Port verbinden, auf dem er läuft. Manchmal stimmt der Hostname nicht mit dem DNS-Namen überein. Und was, wenn Sie ein Front-End oder einen Proxy vor Jenkins platziert haben, das z. beendet SSL-Verbindungen und Sie möchten, dass die Leute Jenkins unter https://company.com/jenkins/ verwenden. Jenkins, der in Port 8080 läuft, kann nichts über das Frontend wissen. Die einzige zuverlässige Möglichkeit für Jenkins, die URL selbst zu erhalten, ist für einen Administrator, der es in der Jenkins-Konfiguration festlegt.

Jenkins muss seine eigene URL kennen, wenn Links erstellt werden, die auf sich selbst verweisen. Es tut dies z.B. wenn es E-Mails versendet, die direkte Links enthalten, um Ergebnisse zu erstellen. Wenn Sie einen Slave vom Typ JNLP haben, initiiert der Slave die Verbindung zum Master und der Master gibt eine Nachricht zurück, die eine Verbindung zu Jenkins zum Herunterladen der Slave-Agent-Software enthält.