У меня установлен
ubuntu server 18
Я развертываю приложение на удаленном сервере из среды
Windows. Развертывание осуществляется через
bash-терминал.
Для начала установил
nginxsudo apt update
sudo apt -y upgrade
sudo apt -y install nginx
После установки сразу же посмотрел статус веб-сервера.
sudo service nginx status
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-11-12 16:24:49 UTC; 16min ago
Docs: man:nginx(
Process: 1394 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 1370 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 1409 (nginx)
Tasks: 5 (limit: 4915)
CGroup: /system.slice/nginx.service
├─1409 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
├─4265 nginx: worker process
├─4266 nginx: worker process
├─4267 nginx: worker process
└─4268 nginx: worker process
ноя 12 16:24:49 ubuntu-srv systemd[1]: Starting A high performance web server and a reverse proxy server...
ноя 12 16:24:49 ubuntu-srv systemd[1]: Started A high performance web server and a reverse proxy server.
Редактирую конфигурационный файл
sudo gedit /etc/nginx/sites-enabled/default
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
.............
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://localhost:8080;
}
location /img/ {
alias /home/it/apps/uploads/;
}
# pass PHP scripts to FastCGI server
............
Проверяю файрвол
sudo ufw app list
it@ubuntu-srv:~$ sudo ufw status
Состояние: неактивен
sudo nginx -s reload
Разворачиваю приложение.
после того, как приложение скопируется
scp -i ~/.ssh/id_rsa \
target/twitter-0.0.1-SNAPSHOT.jar \
it@10.128.4.119:/home/it/apps/deploy/
оно запускается и автоматически должен запуститься встроенный
Tomcat на порту
8080sh -i ~/.ssh/id_rsa it@10.128.4.119 << EOF
pgrep java | xargs pkill -9 -f java
nohup java -jar /home/it/apps/deploy/twitter-0.0.1-SNAPSHOT.jar > log.txt &
EOF
при развертывании приложения должен запуститься встроенный tomcat (приложение разрабатывалось при помощи Spring boot)
проверяю работу процессов
it@ubuntu-srv:~$ ps aux | grep java
it 3213 2.1 5.8 5839616 517828 ? Sl 16:25 0:29 java -jar /home/it/apps/deploy/twitter-0.0.1-SNAPSHOT.jar
it 4612 0.0 0.0 13144 1052 pts/1 S+ 16:48 0:00 grep --color=auto java
it@ubuntu-srv:~$
it@ubuntu-srv:~$ ps aux | grep tomcat
it 4662 0.0 0.0 13144 1008 pts/1 S+ 16:50 0:00 grep --color=auto tomcat
it@ubuntu-srv:~$ ps aux | grep nginx
root 1409 0.0 0.0 141244 7056 ? Ss 16:24 0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
www-data 4265 0.0 0.0 143868 6368 ? S 16:35 0:00 nginx: worker process
www-data 4266 0.0 0.0 143868 6368 ? S 16:35 0:00 nginx: worker process
www-data 4267 0.0 0.0 143868 6368 ? S 16:35 0:00 nginx: worker process
www-data 4268 0.0 0.0 143868 6368 ? S 16:35 0:00 nginx: worker process
it 4672 0.0 0.0 13144 1028 pts/1 S+ 16:50 0:00 grep --color=auto nginx
it@ubuntu-srv:~$
пытаюсь получить доступ по IP на удаленный сервер....
502 Bad Gateway
nginx/1.14.0 (Ubuntu)
проверил лог
gedit /var/log/nginx/error.log
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:04 [emerg] 3943#3943: still could not bind()
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to 0.0.0.0:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: bind() to [::]:80 failed (98: Address already in use)
2019/11/12 14:18:44 [emerg] 4011#4011: still could not bind()
2019/11/12 14:26:59 [notice] 3671#3671: signal process started
2019/11/12 14:27:06 [error] 3672#3672: *2 connect() failed (111: Connection refused) while connecting to upstream, client: fe80::9848:6aa3:a682:34ec, server: _, request: "GET /icons/ubuntu-logo.png HTTP/1.1", upstream: "http://127.0.0.1:8080/icons/ubuntu-logo.png", host: "ubuntu-srv", referrer: "http://ubuntu-srv/"
2019/11/12 14:28:13 [error] 1478#1478: *1 connect() failed (111: Connection refused) while connecting to upstream, client: fe80::9848:6aa3:a682:34ec, server: _, request: "GET /icons/ubuntu-logo.png HTTP/1.1", upstream: "http://127.0.0.1:8080/icons/ubuntu-logo.png", host: "ubuntu-srv", referrer: "http://ubuntu-srv/"
порт кем-то занят.
Я пробовал настроить файрволл, затем перезагрузился и больше ничего не смог передать на сервер
Отключил файрволл, перезапустил систему из заново развернул приложение и смог подключиться к развернутому приложению, почему ?
В чем была ошибка ?
но после перезагрузки удаленной системы снова нельзя подлкючиться
Подскажите как настроить данную связку, как сделать так, чтобы Tomcat не конфликтовал с nginx.
кроме того, когда загражется Ubuntu, то в консоли видно, что apache2 пытается запуситься и не может.
Помогите исправить ошибки и если можно поясните как вообще это должно работать. Мне нужны самые простые настройки для тестирования. Понятно, что на хостинге нужно будет делать все более серьезно.
Спасибо.