ej52 / proxmox-scripts

MIT License
583 stars 308 forks source link

When updating to version 2.10.1, it does not start #109

Closed vshaev closed 10 months ago

vshaev commented 1 year ago

Script nginx-proxy-manager

Describe the bug When updating to version 2.10.1, it does not start ...

System info:

2023-04-04_12-37-58

Jetro97 commented 1 year ago

Same here. WebUI loads and display older v.2.9.19. Impossible to upgrade

cascha42 commented 1 year ago

Same here, the openresty does not start. Any Ideas?

when executing "systemctl restart openresty" nothing happens forever. also no output from journalctl -xefu openresty It can manually/temporarily fixed by starting nginx as in "/lib/systemd/system/openresty.service":

# Stop dance for OpenResty
# =========================
#
# ExecStop sends SIGSTOP (graceful stop) to OpenResty's nginx process.
# If, after 5s (--retry QUIT/5) nginx is still running, systemd takes control
# and sends SIGTERM (fast shutdown) to the main process.
# After another 5s (TimeoutStopSec=5), and if nginx is alive, systemd sends
# SIGKILL to all the remaining processes in the process group (KillMode=mixed).
#
# nginx signals reference doc:
# http://nginx.org/en/docs/control.html
#
[Unit]
Description=The OpenResty Application Platform
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/usr/local/openresty/nginx/logs/nginx.pid
ExecStartPre=/usr/local/openresty/nginx/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/local/openresty/nginx/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/local/openresty/nginx/sbin/nginx -g 'daemon on; master_process on;' -s reload
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /usr/local/openresty/nginx/logs/nginx.pid
TimeoutStopSec=5
KillMode=mixed

[Install]
WantedBy=multi-user.target
irresisti commented 1 year ago

Same here it does not start. Also cannot start manually

root@RevProxy:~# /lib/systemd/system/openresty.service -bash: /lib/systemd/system/openresty.service: Permission denied

vmbs commented 1 year ago

Same for me

image
dhzl84 commented 1 year ago

Was digging a bit and made 2.10.1 start in my Debian 11 LXC.

/usr/local/openresty/nginx/conf/nginx.conf defines the pid file location pid /run/nginx/nginx.pid; but in /lib/systemd/system/openresty.service it is set to /usr/local/openresty/nginx/logs/nginx.pid which does not exist.

I changed the pid location in /usr/local/openresty/nginx/conf/nginx.conf to pid /usr/local/openresty/nginx/logs/nginx.pid;.

If this is a viable solution we could add this command to the debian setup.sh: sed -i -e 's/pid \/run\/nginx\/nginx.pid;/pid \/usr\/local\/openresty\/nginx\/logs\/nginx.pid;/g' /usr/local/openresty/nginx/conf/nginx.conf

Be aware I'm neither a Linux expert nor do I have experience with openresty or nginx, so I do not know how this issue was introduced and if my fix is appropriate.

vmbs commented 1 year ago

Steps that are working for me, let's try modifying the nginx configuration to disable the use of a PID file:

Open the nginx configuration file:

sudo nano /usr/local/openresty/nginx/conf/nginx.conf

Locate the line that contains the pid directive. It should look like this:

pid /usr/local/openresty/nginx/logs/nginx.pid;

Comment out this line by adding a # at the beginning of the line:

# pid /usr/local/openresty/nginx/logs/nginx.pid;

Save the changes and exit the editor.

Test the nginx configuration:

sudo /usr/local/openresty/nginx/sbin/nginx -t

If the configuration test is successful, proceed to the next step. Output from my tests:

nginx: the configuration file /usr/local/openresty/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test is successful

Restart the OpenResty service:

sudo systemctl restart openresty.service

Check the status of the OpenResty service again:

sudo systemctl status openresty.service

For me now is working.

Use this in one command: sudo sed -i 's/pid \/usr\/local\/openresty\/nginx\/logs\/nginx.pid;/# pid \/usr\/local\/openresty\/nginx\/logs\/nginx.pid;/' /usr/local/openresty/nginx/conf/nginx.conf && sudo /usr/local/openresty/nginx/sbin/nginx -t && sudo systemctl restart openresty.service && sudo systemctl status openresty.service

exquisite88 commented 1 year ago

Was digging a bit and made 2.10.1 start in my Debian 11 LXC.

/usr/local/openresty/nginx/conf/nginx.conf defines the pid file location pid /run/nginx/nginx.pid; but in /lib/systemd/system/openresty.service it is set to /usr/local/openresty/nginx/logs/nginx.pid which does not exist.

I changed the pid location in /usr/local/openresty/nginx/conf/nginx.conf to pid /usr/local/openresty/nginx/logs/nginx.pid;.

If this is a viable solution we could add this command to the debian setup.sh: sed -i -e 's/pid \/run\/nginx\/nginx.pid;/pid \/usr\/local\/openresty\/nginx\/logs\/nginx.pid;/g' /usr/local/openresty/nginx/conf/nginx.conf

Be aware I'm neither a Linux expert nor do I have experience with openresty or nginx, so I do not know how this issue was introduced and if my fix is appropriate.

Did this and when the LXC had rebooted i got to the login screen. But when i tried to login i got an error message saying "Bad Gateway"

Any ideas?