Właśnie zacząłem współpracować z Jenkinsem i napotkałem problem. Po zainstalowaniu kilku wtyczek powiedział, że należy go zrestartować i przeszedł w tryb „zamykania”, ale nigdy nie uruchamia się ponownie.
Uwaga: „Jenkins się wyłącza” tak naprawdę nie wyłącza się, po prostu powiadamia różnych użytkowników, którzy mogą chcieć zbudować coś, co Jenkins wkrótce uruchomi ponownie.
Khez
1
Coś, co należy zauważyć, że nie zauważyłem, że ktoś o tym wspominał ... Jeśli przełączysz Jenkinsa w tryb zamykania, tak naprawdę nie zostanie zamknięty, o czym wspomniano. Nie zauważono, że powstrzymuje to uruchamianie nowych wersji. Jeśli musisz pozwolić kompilacji na ukończenie przed ponownym uruchomieniem, powinieneś przełączyć Jenkinsa w tryb zamykania, pozwól na zakończenie kompilacji, a następnie wykonaj „restart” przy użyciu dowolnej metody wybranej powyżej.
TheRedSeth
Ponieważ wersja 1.442 Jenkins nie wymaga ponownego uruchomienia po zainstalowaniu nowych wtyczek, użyj opcji „Zainstaluj bez ponownego uruchomienia” . Niestety ta funkcja nie będzie działać w przypadku aktualizacji lub odinstalowywania.
luka5z
Odpowiedzi:
1942
Aby ręcznie zrestartować Jenkins, możesz użyć jednego z następujących poleceń (wpisując ich adres URL w przeglądarce):
(jenkins_url)/safeRestart- Pozwala na zakończenie wszystkich uruchomionych zadań. Nowe zadania pozostaną w kolejce do uruchomienia po zakończeniu ponownego uruchomienia.
(jenkins_url)/restart - Wymusza restart bez oczekiwania na zakończenie kompilacji.
Aby dowiedzieć się więcej o SafeRestart, zobacz stackoverflow.com/a/15555339/260122java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ safe-restart (jeśli jest zainstalowany przez rpm lub deb, w przeciwnym razie dostosuj odpowiednio).
clacke
13
To powoduje a RestartNotSupportedExceptionw Jenkins 1.532.1 z IcedTea 2.3.9. sudo /etc/init.d/jenkins restartpracował dla mnie.
Matthias Braun
4
W systemie Windows użyj usługi Windows zamiast wiersza polecenia.
Mag
8
Czy istnieją jakieś wewnętrzne linki od Jenkins, aby to zrobić zamiast zapamiętywania magicznego adresu URL?
rogerdpack,
5
Czy to nie jest dostępne w GUI sieci?
realtebo
182
Jeśli zainstalowałeś jako rpm lub deb , to service jenkins restartrównież będzie działał.
https://support.cloudbees.com/hc/en-us/articles/216118748-How-to-Start-Stop-or-Restart-your-Instance- mówi WAŻNE: Nie uruchamiaj metod start | stop | uruchom ponownie ręcznie, ponieważ $ sudo /etc/init.d/jenkins start | stop | restart, ponieważ powoduje, że usługa nie jest niezawodna, ponieważ odbiera środowisko od użytkownika root, w przeciwieństwie do czystego, niezawodnego, pustego środowiska ustawionego przez program uruchamiający init (service / systemctl ).
battey,
96
Należy wspomnieć o wtyczce SafeRestart . Jest to bardzo przydatne ( Uruchom ponownie bezpiecznie ). Dodaje link umożliwiający ponowne uruchomienie z menu głównego:
Dziwne, że ta wtyczka nie jest domyślnie dołączona.
rys.
70
Poniższe polecenia działały dla mnie w systemie Red Hat Linux i powinny działać również w systemie Ubuntu.
Aby poznać status Jenkins:
sudo service jenkins status
Aby uruchomić Jenkins:
sudo service jenkins start
Aby zatrzymać Jenkinsa:
sudo service jenkins stop
Aby ponownie uruchomić Jenkins:
sudo service jenkins restart
Demo w wierszu polecenia:
[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]#
Ludzie używający systemu Windows
Otwórz konsolę / wiersz poleceń -> Przejdź do katalogu instalacyjnego Jenkins. Wykonaj odpowiednio następujące polecenia:
To stop:
jenkins.exe stop
To start:
jenkins.exe start
To restart:
jenkins.exe restart
W systemie Windows, jeśli zainstalowany jako usługa, przejdź do Usługi ( start → Run : services.msc), znaleźć Jenkinsa, kliknij prawym przyciskiem → Restart .
Jeśli to nie pomoże (interfejs użytkownika nie odpowiada), otwórz Menedżera zadań systemu Windows → Procesy , zabij java.exeproces i ponownie uruchom usługę.
próba osiągnięcia / safeRestart w systemie Windows prowadzi do: javax.servlet.ServletException: hudson.lifecycle.RestartNotSupportedException: Domyślny cykl życia systemu Windows nie obsługuje ponownego uruchomienia.
x29a
1
Gdy /safeRestartjest niedostępny, użyj /safeExitprzed ręcznym ponownym uruchomieniem.
Jesse Glick,
19
Jeśli używasz Jenkins na Mac OS X, możesz ręcznie zatrzymać usługę, wykonując następujące polecenie:
Jeśli chcesz po prostu ponownie załadować plik konfiguracyjny, możesz to zrobić
<jenkins_url>/reload
Jest to szybsze, jeśli dokonałeś niewielkiej zmiany w pliku konfiguracyjnym, na przykład config.xmlbezpośrednio w systemie plików lub wykonałeś kopie zadania przez system plików (nie przez przeglądarkę).
To zależy od tego, jak została uruchomiona Jenkins.
Jako usługa: sudo service jenkins restart, sudo /etc/init.d/jenkins restart, itd.
Jako aplikacja internetowa w instalacji Tomcat: uruchom ponownie Tomcat lub po prostu uruchom ponownie aplikację w Tomcat. Przejdź do http://<tomcat-server>:8080/manager/listlub po uwierzytelnieniu naciśnij http://<tomcat-server>:8080/manager/stop?path=/myapp+ http://<tomcat-server>:8080/manager/start?path=/myapp.
Uruchomiony przez just java -jar: kill it ( kill -9 <pid>) i uruchom go ponownie.
Uruchomiony z java -jar, ale od przełożonego:supervisorctl restart jenkins
Czasami będą jakieś przestarzałe procesy Jenkinsa, więc ps -ef | grep jenkinszabij je wszystkie. Uruchom ponownie, jak opisano w poprzednich odpowiedziach, a wszystko będzie czyste.
Aby ręcznie zrestartować Jenkins ręcznie za pomocą przeglądarki:
Wpisz swój www.jenkins-ip/restart
(na przykład http://localhost:8080/restart) w przeglądarce. Jenkins uruchomi się ponownie i załaduje stronę logowania automatycznie po ponownym uruchomieniu.
Kilka osób wspomniało o potrzebie ponownego uruchomienia kontenera serwletu, jeśli Jenkins nie działa jako samodzielny. Ale Tomcat (lub to, co jest używane) nie musi być ponownie uruchamiane. Tomcat może wymusić ponowne uruchomienie kontekstu Jenkins, jeśli restart Jenkins jest zawieszony.
Ale żeby odpowiedzieć na inny komentarz, kiedy przełączysz Jenkinsa w tryb „zamykania”, tak naprawdę nie zostanie zamknięty. Zatrzymuje wykonywanie nowych zadań i umieszcza gigantyczny czerwony sztandar na stronach systemowych, aby wszyscy wiedzieli, że administrator chce go w końcu usunąć. Istnieją wtyczki, które wyzwalają restart kontenera serwletu dla tego kontekstu po zakończeniu wszystkich kompilacji.
Alternatywą jest poczekanie, aż zakończy się ostatnie uruchomione zadanie, a następnie ręczne wykopanie Jenkinsa z kontenera (lub za pomocą opcji wiersza poleceń, które inni wspominali o samodzielnej instalacji Jenkins).
Ważny! W oknie dokowanym - dane Jenkins muszą być trwałe (możesz stracić uruchomione zadania, zasoby, kompilacje, dane itp.). Dlatego bądź ostrożny, lepiej NIE używaj „restartu”, a NIE używaj stop i start na obrazie dokera. rozwiązaniem byłoby: sudo docker ps -> sudo docker stop <dockerImageID> -> sudo docker start <dockerImageID>
avivamg
2
Masz wiele opcji ręcznego restartowania Jenkinsa, ale głównie dwie (adres URL lub wiersz poleceń):
Alternatywa 1: Korzystanie z instalacyjnego adresu URL Jenkinsa:
dość niebezpieczne jest po prostu wyszukiwanie procesów Java, nie sądzisz? Należy szukać czegoś bardziej konkretnego imo Jenkinsa.
Tim Büthe
0
Jeśli nie masz uprawnień ani bezpośredniego dostępu do wiersza poleceń, możesz np. Wykonać jedną z następujących czynności:
Utwórz zadanie z krokiem powłoki / partii, który uruchomi ponowne uruchomienie z folderu instalacyjnego Jenkins
Zainstaluj / zaktualizuj niektóre wtyczki, zaznaczając „uruchom ponownie po instalacji” (przynajmniej działa to w starszych wersjach)
Oba powyższe to hacki, ale aktywnie korzystałem z nich w bardzo ograniczonym środowisku, w którym nikt nie chciał, żebym ponownie uruchomił Jenkinsa, huh.
Jeśli używasz Jenkinsa jako serwera na komputerze z systemem Windows, otwórz Menedżera zadań i przejdź do karty usługi. Wyszukaj Jenkinsa i uruchom go ponownie.
Odpowiedzi:
Aby ręcznie zrestartować Jenkins, możesz użyć jednego z następujących poleceń (wpisując ich adres URL w przeglądarce):
(jenkins_url)/safeRestart
- Pozwala na zakończenie wszystkich uruchomionych zadań. Nowe zadania pozostaną w kolejce do uruchomienia po zakończeniu ponownego uruchomienia.(jenkins_url)/restart
- Wymusza restart bez oczekiwania na zakończenie kompilacji.źródło
java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ safe-restart
(jeśli jest zainstalowany przez rpm lub deb, w przeciwnym razie dostosuj odpowiednio).RestartNotSupportedException
w Jenkins 1.532.1 z IcedTea 2.3.9.sudo /etc/init.d/jenkins restart
pracował dla mnie.Jeśli zainstalowałeś jako rpm lub deb , to
service jenkins restart
również będzie działał.źródło
W systemie Ubuntu lub Debian, jeśli jest instalowany przez
apt-get
/dpkg
:źródło
Należy wspomnieć o wtyczce SafeRestart . Jest to bardzo przydatne ( Uruchom ponownie bezpiecznie ). Dodaje link umożliwiający ponowne uruchomienie z menu głównego:
źródło
Poniższe polecenia działały dla mnie w systemie Red Hat Linux i powinny działać również w systemie Ubuntu.
Aby poznać status Jenkins:
Aby uruchomić Jenkins:
Aby zatrzymać Jenkinsa:
Aby ponownie uruchomić Jenkins:
Demo w wierszu polecenia:
Ludzie używający systemu Windows
Otwórz konsolę / wiersz poleceń -> Przejdź do katalogu instalacyjnego Jenkins. Wykonaj odpowiednio następujące polecenia:
źródło
W systemie Windows, jeśli zainstalowany jako usługa, przejdź do Usługi ( start → Run :
services.msc
), znaleźć Jenkinsa, kliknij prawym przyciskiem → Restart .Jeśli to nie pomoże (interfejs użytkownika nie odpowiada), otwórz Menedżera zadań systemu Windows → Procesy , zabij
java.exe
proces i ponownie uruchom usługę.źródło
/safeRestart
jest niedostępny, użyj/safeExit
przed ręcznym ponownym uruchomieniem.Jeśli używasz Jenkins na Mac OS X, możesz ręcznie zatrzymać usługę, wykonując następujące polecenie:
źródło
load
Można to również zrobić za pomocą interfejsu Jenkins CLI :
jenkins-cli.jar
Plik wraz z pełną listą poleceń dostępne są nahttp://[jenkins-server]/cli
.źródło
Jeśli chcesz po prostu ponownie załadować plik konfiguracyjny, możesz to zrobić
Jest to szybsze, jeśli dokonałeś niewielkiej zmiany w pliku konfiguracyjnym, na przykład
config.xml
bezpośrednio w systemie plików lub wykonałeś kopie zadania przez system plików (nie przez przeglądarkę).źródło
To zależy od tego, jak została uruchomiona Jenkins.
Jako usługa:
sudo service jenkins restart
,sudo /etc/init.d/jenkins restart
, itd.Jako aplikacja internetowa w instalacji Tomcat: uruchom ponownie Tomcat lub po prostu uruchom ponownie aplikację w Tomcat. Przejdź do
http://<tomcat-server>:8080/manager/list
lub po uwierzytelnieniu naciśnijhttp://<tomcat-server>:8080/manager/stop?path=/myapp
+http://<tomcat-server>:8080/manager/start?path=/myapp
.Uruchomiony przez just
java -jar
: kill it (kill -9 <pid>
) i uruchom go ponownie.Uruchomiony z
java -jar
, ale od przełożonego:supervisorctl restart jenkins
źródło
Użyj interfejsu wiersza poleceń :
źródło
W systemie Windows
Przejdź do instalacji Jenkins, otwórz cmd i uruchom:
Zatrzymać:
Zacząć:
Zrestartować:
źródło
Czasami będą jakieś przestarzałe procesy Jenkinsa, więc
ps -ef | grep jenkins
zabij je wszystkie. Uruchom ponownie, jak opisano w poprzednich odpowiedziach, a wszystko będzie czyste.źródło
Jeśli korzystasz z FreeBSD:
źródło
Jeśli możesz uzyskać do niego dostęp w przeglądarce internetowej, po prostu dodaj
/restart
na przykładlocalhost:8080/restart
.Jeśli uruchamiasz go jako usługę, zaloguj się na serwerze i wykonaj polecenie:
źródło
Aby ręcznie zrestartować Jenkins ręcznie za pomocą przeglądarki:
Wpisz swój
www.jenkins-ip/restart
(na przykładhttp://localhost:8080/restart
) w przeglądarce. Jenkins uruchomi się ponownie i załaduje stronę logowania automatycznie po ponownym uruchomieniu.źródło
JenkinURL / restart wykona restart.
źródło
/usr/local/etc/rc.d/jenkin
to nie jest adres URL (?). Czy możesz rozwinąć?Dla Maca
Przestań Jenkins
Uruchom Jenkins
źródło
Z terminala:
Lub
jenkinsurl/restart
.źródło
Kilka osób wspomniało o potrzebie ponownego uruchomienia kontenera serwletu, jeśli Jenkins nie działa jako samodzielny. Ale Tomcat (lub to, co jest używane) nie musi być ponownie uruchamiane. Tomcat może wymusić ponowne uruchomienie kontekstu Jenkins, jeśli restart Jenkins jest zawieszony.
Ale żeby odpowiedzieć na inny komentarz, kiedy przełączysz Jenkinsa w tryb „zamykania”, tak naprawdę nie zostanie zamknięty. Zatrzymuje wykonywanie nowych zadań i umieszcza gigantyczny czerwony sztandar na stronach systemowych, aby wszyscy wiedzieli, że administrator chce go w końcu usunąć. Istnieją wtyczki, które wyzwalają restart kontenera serwletu dla tego kontekstu po zakończeniu wszystkich kompilacji.
Alternatywą jest poczekanie, aż zakończy się ostatnie uruchomione zadanie, a następnie ręczne wykopanie Jenkinsa z kontenera (lub za pomocą opcji wiersza poleceń, które inni wspominali o samodzielnej instalacji Jenkins).
źródło
Jeśli zostanie wdrożony jako plik wojenny, zrestartuj serwer aplikacji, na przykład Tomcat.
źródło
W przypadku CentOS :
Jenkins będzie aktywny i działał na niektórych PID.
źródło
Jeśli znajduje się w kontenerze Docker, możesz po prostu ponownie uruchomić kontener. Załóżmy, że nazwa kontenera to
jenkins
, więc możesz:Lub
źródło
Masz wiele opcji ręcznego restartowania Jenkinsa, ale głównie dwie (adres URL lub wiersz poleceń):
Alternatywa 1: Korzystanie z instalacyjnego adresu URL Jenkinsa:
Jenkins_URL/restart
.Ten typ restartu wymusza restart bez oczekiwania na zakończenie kompilacji.
Jeśli musisz poczekać na zakończenie zadań, możesz użyć:
Jenkins_URL/safeRestart
.Alternatywa 2: Korzystanie z wiersza polecenia, w zależności od instalacji Jenkins.
Jeśli instalujesz przy użyciu pakietu rpm lub deb lub masz instalację Jenkins w Red Hat , Ubuntu lub Debian , możesz użyć tych poleceń:
sudo service jenkins restart
sudo service jenkins stop
asudo service jenkins start
,Jeśli używasz CentOS , możesz użyć tego polecenia:
źródło
Przeglądaj http: // [jenkins-server-url] / updateCenter / i po prostu zaznacz „restart jenkins”
źródło
Windows
Uruchom
services.msc
i uruchom ponownie:źródło
Spróbuj poniżej. To zadziałało dla mnie.
Otrzymasz PID Jenkinsa. Teraz zrób
źródło
Jeśli nic nie działa, znajdź proces Jenkinsa
a następnie zabij to:
Edycja: poszukaj procesu Java, który jest powiązany z Jenkins
źródło
Jeśli nie masz uprawnień ani bezpośredniego dostępu do wiersza poleceń, możesz np. Wykonać jedną z następujących czynności:
Oba powyższe to hacki, ale aktywnie korzystałem z nich w bardzo ograniczonym środowisku, w którym nikt nie chciał, żebym ponownie uruchomił Jenkinsa, huh.
źródło
Jeśli używasz Jenkinsa jako serwera na komputerze z systemem Windows, otwórz Menedżera zadań i przejdź do karty usługi. Wyszukaj Jenkinsa i uruchom go ponownie.
źródło