Como reiniciar o Jenkins manualmente?

816

Acabei de começar a trabalhar com Jenkins e tive um problema. Depois de instalar vários plugins, ele disse que precisava ser reiniciado e entrou no modo "desligando", mas nunca reinicia.

Como faço para reiniciar manualmente?

Kerry Jones
fonte
34
Nota: "O Jenkins está desligando" na verdade não é desligado, apenas notifica os vários usuários que desejam criar algo que o Jenkins será reiniciado em breve.
Khez
1
Algo a notar que eu não notei que mais alguém mencionou ... Se você colocar Jenkins no modo de desligamento, ele na verdade não é desligado, o que foi mencionado. O que não foi observado é que ele impede que novas compilações sejam iniciadas. Se você precisar deixar uma compilação concluída antes de reiniciar, coloque o Jenkins no modo de desligamento, deixe a compilação terminar e, em seguida, faça sua "reinicialização" com o método escolhido acima.
TheRedSeth
Como a versão 1.442 Jenkins não precisa ser reiniciada após a instalação de novos plug-ins, use “Instalar sem reiniciar” . Infelizmente, esse recurso não funcionará para atualização ou desinstalação.
Luka5z 28/05

Respostas:

1942

Para reiniciar o Jenkins manualmente, você pode usar um dos seguintes comandos (inserindo o URL em um navegador):

(jenkins_url)/safeRestart- Permite que todos os trabalhos em execução sejam concluídos. Novos trabalhos permanecerão na fila para execução após a reinicialização ser concluída.

(jenkins_url)/restart - Força uma reinicialização sem aguardar a conclusão das compilações.

Željko Filipin
fonte
14
Para safeRestart, consulte stackoverflow.com/a/15555339/260122 java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ safe-restart (se instalado por rpm ou deb, caso contrário, ajuste de acordo).
clacke
13
Isso causa um RestartNotSupportedExceptionno Jenkins 1.532.1 com o IcedTea 2.3.9. sudo /etc/init.d/jenkins restarttrabalhou para mim embora.
Matthias Braun
4
No Windows, use o serviço Windows em vez da linha de comando.
Mag
8
Existem links internos da jenkins para fazer isso, em vez de lembrar de URLs mágicos?
Rogerdpack # 20/16
5
Isso não está disponível no GUI da web?
Realtebo 8/07
182

Se você instalou como um rpm ou deb , service jenkins restarttambém funcionará.

Ben Mathews
fonte
115

No Ubuntu ou Debian, quando instalado por meio de apt-get/ dpkg:

$ sudo /etc/init.d/jenkins restart
Usage: /etc/init.d/jenkins {start|stop|status|restart|force-reload}
Timo Tijhof
fonte
1
https://support.cloudbees.com/hc/en-us/articles/216118748-How-to-Start-Stop-or-Restart-your-Instance- diz IMPORTANTE: Não inicie os métodos start | stop | restart manualmente manualmente como $ sudo /etc/init.d/jenkins start | stop | restart porque torna seu serviço não confiável, pois captura o ambiente do usuário root, em oposição a um ambiente em branco confiável e limpo, definido pelos lançadores init (service / systemctl )
battey
96

O plugin SafeRestart precisa ser mencionado. É bastante útil ( Reinicie com segurança ). Ele adiciona um link para poder reiniciar no menu principal:

Digite a descrição da imagem aqui

Vitalii Elenhaupt
fonte
Costumo usar esse recurso para instalações de plugins.
Imdibiji
Estranho que este plugin não esteja incluído por padrão.
Fig
70

Os comandos abaixo funcionaram para mim no Red Hat Linux e também devem funcionar para o Ubuntu.

  • Para conhecer o status de Jenkins:

    sudo service jenkins status
    
  • Para iniciar o Jenkins:

    sudo service jenkins start
    
  • Para parar o Jenkins:

    sudo service jenkins stop
    
  • Para reiniciar o Jenkins:

    sudo service jenkins restart
    

Demonstração no prompt de comando:

[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]#

As pessoas que estão usando o Windows

Abra Console / Linha de Comandos -> Vá para o diretório de instalação do Jenkins. Execute os seguintes comandos, respectivamente:

To stop:
jenkins.exe stop

To start:
jenkins.exe start

To restart:
jenkins.exe restart

Varun
fonte
37

No Windows, se você instalou-lo como um serviço, vá para Serviços ( IniciarRun : services.msc), encontrar Jenkins, clique direito → Restart .

Se isso não ajudar (a interface do usuário não está respondendo), abra o Gerenciador de tarefas do Windows → Processos , interrompa o java.exeprocesso e reinicie o serviço novamente.

Constantine
fonte
7
tentar alcançar / safeRestart no Windows levará a: javax.servlet.ServletException: hudson.lifecycle.RestartNotSupportedException: O ciclo de vida padrão do Windows não oferece suporte à reinicialização.
x29a 17/02
1
Quando /safeRestartnão estiver disponível, use /safeExitantes de reiniciar manualmente.
Jesse Glick
19

Se você estiver executando o Jenkins no Mac OS X, poderá parar o serviço manualmente executando este comando:

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
Jalal
fonte
1
você pode reiniciar usandoload
kraftydevil
17

Isso também pode ser feito usando a CLI do Jenkins :

java -jar jenkins-cli.jar -s http://[jenkins-server]/ restart

O jenkins-cli.jararquivo junto com uma lista completa de comandos estão disponíveis em http://[jenkins-server]/cli.

Ciaran
fonte
12

Se você quiser apenas recarregar o arquivo de configuração, pode-se fazer

    <jenkins_url>/reload

Isso é mais rápido se você fez algumas pequenas alterações no arquivo de configuração, como config.xmldiretamente no sistema de arquivos ou fez cópias do trabalho através do sistema de arquivos (não através do navegador).

infoclogged
fonte
10

Depende de como o Jenkins foi iniciado.

  • Como um serviço: sudo service jenkins restart, sudo /etc/init.d/jenkins restart, etc.

  • Como aplicativo da Web em uma instalação do Tomcat: reinicie o Tomcat ou apenas reinicie o aplicativo no Tomcat. Vá para http://<tomcat-server>:8080/manager/listou após a autenticação, pressione http://<tomcat-server>:8080/manager/stop?path=/myapp+ http://<tomcat-server>:8080/manager/start?path=/myapp.

  • Lançado com just java -jar: kill it ( kill -9 <pid>) e reinicie-o.

  • Lançado com java -jar, mas de um supervisor:supervisorctl restart jenkins

François SAMIN
fonte
Basta escolher a resposta legal do caso de uso !!
User43968
8

No Windows

Vá para a instalação do Jenkins, abra o cmd e execute:

  • Parar:

    jenkins.exe stop
    
  • Para iniciar:

    jenkins.exe start
    
  • Reiniciar:

    jenkins.exe restart
    
Monis Majeed
fonte
8

Às vezes, existem alguns processos antigos de Jenkins, então ps -ef | grep jenkinsmate todos eles. Reinicie conforme descrito nas respostas anteriores e ele estará limpo.

ps -ef | grep jenkins
sudo kill -kill <pid>
afiado
fonte
7

Se você executa o FreeBSD:

/usr/local/etc/rc.d/jenkins restart
Eric Cope
fonte
5

Se você puder acessá-lo em um navegador da Web, basta adicionar /restart, por exemplo localhost:8080/restart,.

Se você o estiver executando como um serviço, efetue login no servidor e execute o comando:

sudo service jenkins stop/start
Rizwan Javid
fonte
4

Para reiniciar o Jenkins manualmente usando o navegador:

Digite seu www.jenkins-ip/restart (por exemplo http://localhost:8080/restart) no navegador. Jenkins reiniciará e carregará a página de login automaticamente após reiniciar.

Vaibhav Walke
fonte
3

JenkinURL / restart fará o reinício.


/usr/local/etc/rc.d/jenkins restart
Sebin
fonte
Mas /usr/local/etc/rc.d/jenkinnão é um URL (?). Você pode elaborar?
Peter Mortensen
3

Para Mac

Stop Jenkins

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

Iniciar Jenkins

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
Sazzad Hissain Khan
fonte
3

Do terminal:

sudo service jenkins restart

Or jenkinsurl/restart.

Sidhartha
fonte
3

Várias pessoas mencionaram a necessidade de reiniciar o contêiner de servlet se o Jenkins não estiver sendo executado como autônomo. Mas o Tomcat (ou o que está sendo usado) não precisa ser reiniciado. O Tomcat pode forçar uma reinicialização do contexto Jenkins se a reinicialização do Jenkins for interrompida.

Mas, para abordar outro comentário, quando você coloca Jenkins no modo "desligando", ele não é desligado. Impede a execução de novos trabalhos e coloca uma faixa vermelha gigante nas páginas do sistema para que todos saibam que o administrador deseja removê-lo eventualmente. Existem plugins para acionar uma reinicialização do contêiner de servlet para esse contexto depois que todas as compilações forem concluídas.

A alternativa é aguardar a conclusão do último trabalho em execução e, em seguida, chutar manualmente Jenkins a partir do contêiner (ou através das opções de linha de comando que outros usuários mencionaram para a instalação autônoma de Jenkins).

JasonRobinson
fonte
3

Se ele for implementado como um arquivo war, reinicie o servidor de aplicativos, por exemplo, Tomcat.

afiado
fonte
2

Para o CentOS :

sudo systemctl restart jenkins

sudo systemctl status Jenkins

Jenkins estará ativo e funcionando com algum PID.

Aamir M Meman
fonte
2

Se estiver em um contêiner do Docker, basta reiniciar o contêiner. Vamos supor que o nome do contêiner seja jenkins, para que você possa:

docker restart jenkins

Ou

docker stop jenkins
docker start jenkins
Youssouf Maiga
fonte
Importante! Na janela de encaixe - os dados do Jenkins devem ser persistentes (você pode perder a execução de trabalhos, recursos, construções, dados, etc ...) Portanto, tenha cuidado, é melhor NÃO usar "restart" e NÃO parar e iniciar na imagem da janela de encaixe. a solução seria: sudo janela de encaixe ps -> parada sudo janela de encaixe <dockerImageID> -> sudo janela de encaixe iniciar <dockerImageID>
avivamg
2

Você tem muitas opções para reiniciar o Jenkins manualmente, mas principalmente duas (URL ou linha de comando):

  • Alternativa 1: Usando o URL de instalação do Jenkins:

    Jenkins_URL/restart.

    Exemplo: http://jenkinsserver.com/restart

    Esse tipo de reinicialização força uma reinicialização sem aguardar a conclusão das compilações.

    Se você precisar aguardar o término dos trabalhos, poderá usar:

    Jenkins_URL/safeRestart.

    Exemplo: http://jenkinsserver.com/safeRestart

  • Alternativa 2: Usando a linha de comando, dependendo da instalação do Jenkins.

    • Se você estiver instalando usando o pacote rpm ou deb ou se tiver a instalação do Jenkins no Red Hat , Ubuntu ou Debian , poderá usar estes comandos:

    • sudo service jenkins restart

      Isso reinicia Jenkins em uma etapa.

    • sudo service jenkins stope sudo service jenkins start,

      Isso reinicia Jenkins em duas subidas.

      Nota: se você precisar verificar o status do Jenkins, poderá usar este comando: sudo service jenkins status

    • Se você estiver usando o CentOS , poderá usar este comando:

      sudo systemctl restart jenkins
      

      Nota: se você precisar verificar o status do Jenkins, poderá usar este comando: sudo systemctl status Jenkins

Javier C.
fonte
1

janelas

Execute services.msce reinicie:

Digite a descrição da imagem aqui

Tiago Medici
fonte
1

Experimente o abaixo. Funcionou para mim.

sudo service jenkins status  

Isso lhe dará PID de Jenkins. Agora faça um

kill -15 [PID]

sudo service jenkins start
Avinash Agrawal
fonte
3
Querendo saber por que você não apenas faz "(sudo) serviço jenkins restart"?
Nembleton
Sim, absolutamente correto, mas já enfrentei um problema, às vezes no qual não funcionava para mim.
Avinash Agrawal
1

Se nada funcionar, encontre o processo Jenkins

ps aux | grep java

e depois mate:

kill -9 [PID]

sudo service jenkins start

Edit: Procure o processo java que está relacionado ao jenkins

Neil
fonte
4
bastante perigoso apenas procurar processos java, você não acha? Deve-se esperar por algo mais específico da Jenkins.
Tim Büthe
0

Se você não tiver permissões ou acesso à linha de comando diretamente, poderá executar, por exemplo, um dos seguintes procedimentos:

  1. Crie um trabalho com etapa de shell / lote que acionará uma reinicialização na pasta de instalação do Jenkins
  2. Instale / atualize algum plug-in enquanto verifica "reiniciar após a instalação" (pelo menos isso funciona em versões antigas)

Ambos acima são hacks, mas eu os usei ativamente em um ambiente muito restrito, onde ninguém queria que eu reiniciasse o Jenkins, hein.

TEH EMPRAH
fonte
0

Se você estiver executando o Jenkins como servidor em uma máquina Windows, abra o Gerenciador de tarefas e mude para a guia Serviço. Procure Jenkins e reinicie-o.

Prem Choudhary
fonte