Запустите и остановите Tomcat через SSH на удаленном сервере - PullRequest
0 голосов
/ 29 марта 2019

У меня есть веб-сервер Tomcat, работающий на машине с Ubuntu.Как я могу перезагрузить сервер через SSH с gitlab-ci?

Я внедряю различные файлы war & jar на сервер через ssh на gitlab-ci, и в некоторых случаях мне нужно перезапустить сервер Tomcat.

Я пытался использовать команду tomcatctl:

> ssh user@remote_ip tomcatctl stop
> bash: tomcatctl: command not found

> ssh user@remote_ip bash "tomcatctl stop"
> bash: tomcatctl: No such file or directory

Я также попытался написать сценарий оболочки и вызвать его через ssh:

#!/bin/bash
tomcatctl stop
> ssh user@remote_ip './stopTomcat.sh'
> ./stopTomcat.sh: line 2: tomcatctl: command not found

Похоже, что он выполняет удаленный сценарий на стороне клиента, а не на удаленном сервере.Когда я открываю терминал на сервере, все команды и скрипт работают правильно.

1 Ответ

0 голосов
/ 29 марта 2019

Это в основном зависит от того, как установлен ваш кот и какая у него версия.

После этой страницы вы можете установить tomcat 9 и настроить службу с помощью systemd.

В gitlab-ci.yml, просто остановите службу удаленно с помощью:

stop_tomcat_job:
  script:
    - ssh tomcat@${SERVER} "sudo systemctl stop tomcat" > /dev/null 2>&1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...