Ho appena iniziato a lavorare con Jenkins e ho riscontrato un problema. Dopo aver installato diversi plugin ha detto che deve essere riavviato ed è entrato in una modalità di "spegnimento", ma non si riavvia mai.
Come si esegue un riavvio manuale?
Ho appena iniziato a lavorare con Jenkins e ho riscontrato un problema. Dopo aver installato diversi plugin ha detto che deve essere riavviato ed è entrato in una modalità di "spegnimento", ma non si riavvia mai.
Come si esegue un riavvio manuale?
Risposte:
Per riavviare Jenkins manualmente, puoi usare uno dei seguenti comandi (inserendo il loro URL in un browser):
(jenkins_url)/safeRestart
- Consente il completamento di tutti i processi in esecuzione. I nuovi lavori rimarranno nella coda per essere eseguiti al termine del riavvio.
(jenkins_url)/restart
- Forza un riavvio senza attendere il completamento delle build.
java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ safe-restart
(se installato da rpm o deb, tuttavia regolare di conseguenza).
RestartNotSupportedException
in Jenkins 1.532.1 con IcedTea 2.3.9. sudo /etc/init.d/jenkins restart
ha funzionato per me però.
Se hai installato come rpm o deb , service jenkins restart
funzionerà anche.
Su Ubuntu o Debian, se installato tramite apt-get
/ dpkg
:
$ sudo /etc/init.d/jenkins restart
Usage: /etc/init.d/jenkins {start|stop|status|restart|force-reload}
È necessario menzionare il plug-in SafeRestart . È piuttosto utile ( riavvia in modo sicuro ). Aggiunge un collegamento per poter riavviare dal menu principale:
I comandi seguenti hanno funzionato per me in Red Hat Linux e dovrebbero funzionare anche per Ubuntu.
Per conoscere lo stato di Jenkins:
sudo service jenkins status
Per avviare il Jenkins:
sudo service jenkins start
Per fermare il Jenkins:
sudo service jenkins stop
Per riavviare Jenkins:
sudo service jenkins restart
Demo al prompt dei comandi:
[root@varunHome]# sudo service jenkins status
jenkins (pid 7468) is running...
[root@varunHome]# sudo service jenkins stop
Shutting down Jenkins [ OK ]
[root@varunHome]# sudo service jenkins start
Starting Jenkins [ OK ]
[root@varunHome]# sudo service jenkins restart
Shutting down Jenkins [ OK ]
Starting Jenkins [ OK ]
[root@varunHome]#
Le persone che usano Windows
Apri la console / riga di comando -> Vai alla directory di installazione di Jenkins. Eseguire rispettivamente i seguenti comandi:
To stop:
jenkins.exe stop
To start:
jenkins.exe start
To restart:
jenkins.exe restart
In Windows, se è stato installato come un servizio, andare a Servizi ( Inizio → Run : services.msc
), trovare Jenkins, fare clic destro → Riavvia .
Se non aiuta (l'interfaccia utente non risponde) aprire Task Manager di Windows → Processi , terminare il java.exe
processo e riavviare nuovamente il servizio.
/safeRestart
non è disponibile, utilizzare /safeExit
prima di riavviare manualmente.
Se esegui Jenkins su Mac OS X, puoi interrompere manualmente il servizio eseguendo questo comando:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
load
Questo può essere fatto anche usando l' interfaccia della riga di comando Jenkins :
java -jar jenkins-cli.jar -s http://[jenkins-server]/ restart
Il jenkins-cli.jar
file insieme a un elenco completo di comandi sono disponibili all'indirizzo http://[jenkins-server]/cli
.
Se vuoi semplicemente ricaricare il file di configurazione, puoi farlo
<jenkins_url>/reload
Questo è più veloce se hai apportato alcune piccole modifiche al file di configurazione, come config.xml
direttamente nel file system o hai fatto copie del lavoro attraverso il file system (non attraverso il browser).
Dipende da come è stato avviato Jenkins.
Come servizio: sudo service jenkins restart
, sudo /etc/init.d/jenkins restart
, etc.
Come applicazione Web in un'installazione Tomcat: riavvia Tomcat o riavvia semplicemente l'applicazione in Tomcat. Vai a http://<tomcat-server>:8080/manager/list
o dopo aver premuto l'autenticazione http://<tomcat-server>:8080/manager/stop?path=/myapp
+ http://<tomcat-server>:8080/manager/start?path=/myapp
.
Lanciato con just java -jar
: kill it ( kill -9 <pid>
) e riavvialo.
Lanciato con java -jar
, ma da un supervisore:supervisorctl restart jenkins
Utilizzare l'interfaccia della riga di comando :
java -jar jenkins-cli.jar -s http://jenkins.example.com:8080/ -i /root/.ssh/id_rsa safe-restart
Vai all'installazione di Jenkins, apri il cmd ed esegui:
Fermare:
jenkins.exe stop
Iniziare:
jenkins.exe start
Ricominciare:
jenkins.exe restart
Se riesci ad accedervi da un browser web, aggiungi /restart
, ad esempio localhost:8080/restart
,.
Se lo stai eseguendo come servizio, accedi al tuo server ed esegui il comando:
sudo service jenkins stop/start
Per riavviare Jenkins manualmente utilizzando il browser:
Inserisci il tuo www.jenkins-ip/restart
(ad esempio, http://localhost:8080/restart
) nel browser. Jenkins si riavvierà e caricherà automaticamente la pagina di accesso dopo il riavvio.
JenkinURL / restart farà il riavvio.
/usr/local/etc/rc.d/jenkins restart
/usr/local/etc/rc.d/jenkin
non è un URL (?). Puoi elaborare?
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
Diverse persone hanno menzionato la necessità di riavviare il contenitore servlet se Jenkins non è in esecuzione come autonomo. Ma Tomcat (o ciò che viene utilizzato) non deve essere riavviato. Tomcat può forzare un riavvio del contesto Jenkins se il riavvio di Jenkins è bloccato.
Ma per rispondere ad un altro commento, quando metti Jenkins in modalità "spegnimento", non si spegne. Impedisce l'esecuzione di nuovi lavori e posiziona un gigantesco banner rosso sulle pagine del sistema in modo che tutti sappiano che l'amministratore vuole eliminarlo alla fine. Ci sono plugin per attivare un riavvio del contenitore servlet per quel contesto dopo che tutte le build sono state completate.
L'alternativa è attendere il completamento dell'ultimo lavoro in esecuzione, quindi eseguire manualmente il kick over di Jenkins dal contenitore (o tramite le opzioni della riga di comando che altri hanno menzionato per l'installazione autonoma di Jenkins).
Per CentOS :
sudo systemctl restart jenkins
sudo systemctl status Jenkins
Jenkins sarà attivo e funzionante su alcuni PID.
Se si trova in un contenitore Docker, puoi semplicemente riavviare il contenitore. Supponiamo che il nome del contenitore sia jenkins
, quindi puoi fare:
docker restart jenkins
O
docker stop jenkins
docker start jenkins
Hai molte opzioni per riavviare Jenkins manualmente, ma principalmente due (URL o riga di comando):
Alternativa 1: utilizzo dell'URL di installazione di Jenkins:
Jenkins_URL/restart
.
Esempio: http://jenkinsserver.com/restart
Questo tipo di riavvio impone un riavvio senza attendere il completamento delle build.
Se devi attendere la fine dei lavori puoi usare:
Jenkins_URL/safeRestart
.
Esempio: http://jenkinsserver.com/safeRestart
Alternativa 2: utilizzo della riga di comando, a seconda dell'installazione di Jenkins.
Se stai installando usando il pacchetto rpm o deb o hai l'installazione Jenkins in Red Hat , Ubuntu o Debian , puoi usare questi comandi:
sudo service jenkins restart
Questo riavvia Jenkins in un solo passaggio.
sudo service jenkins stop
e sudo service jenkins start
,
Questo riavvia Jenkins in due passaggi.
Nota: se è necessario controllare lo stato di Jenkins, è possibile utilizzare questo comando:
sudo service jenkins status
Se si utilizza CentOS , è possibile utilizzare questo comando:
sudo systemctl restart jenkins
Nota: se è necessario controllare lo stato di Jenkins, è possibile utilizzare questo comando:
sudo systemctl status Jenkins
Sfoglia http: // [jenkins-server-url] / updateCenter / e seleziona 'riavvia jenkins'
Prova il seguito. Ha funzionato per me.
sudo service jenkins status
Ti darà il PID di Jenkins. Ora fai un
kill -15 [PID]
sudo service jenkins start
Se non funziona nulla, trova il processo Jenkins
ps aux | grep java
e poi uccidilo:
kill -9 [PID]
sudo service jenkins start
Modifica: cerca il processo java relativo a jenkins
Se non si dispone delle autorizzazioni o dell'accesso diretto alla riga di comando, è possibile, ad esempio, eseguire una delle seguenti operazioni:
Entrambi sopra sono degli hack, ma li ho usati attivamente in un ambiente molto limitato in cui nessuno voleva che riavviassi Jenkins, eh.
Se si esegue Jenkins come server su un computer Windows, aprire Task Manager e passare alla scheda Servizio. Cerca Jenkins e riavvialo.