Rails 6 Capistrano — нет такого файла puma.sock

#ruby-on-rails #ruby #amazon-ec2 #capistrano #ruby-on-rails-6

#ruby-on-rails #ruby #amazon-ec2 #capistrano #ruby-on-rails-6

Вопрос:

пожалуйста, у меня гигантская проблема уже более 10 часов.

Всякий раз, когда я запускаю развертывание своего приложения в Rails с Capistrano и Puma и запускаю перезапуск nginx, я вижу эту ошибку при попытке получить доступ к своему веб-сайту:

введите описание изображения здесь

Когда я обращаюсь к своим журналам nginx, я вижу следующую ошибку:

 2020/12/29 04:09:50 [crit] 9536#9536: *73 connect() to unix:///home/ubuntu/apps/my_app/shared/tmp/sockets/my_app-puma.sock failed (2: No such file or directory) while connecting to upstream, client: [CLIENT_ID], server: , request: "GET / HTTP/1.1", upstream: "http://unix:///home/ubuntu/apps/my_app/shared/tmp/sockets/my_app-puma.sock:/", host: "[MY_HOST]"
2020/12/29 04:09:50 [crit] 9536#9536: *73 connect() to unix:///home/ubuntu/apps/my_app/shared/tmp/sockets/my_app-puma.sock failed (2: No such file or directory) while connecting to upstream, client: [CLIENT_ID], server: , request: "GET / HTTP/1.1", upstream: "http://unix:///home/ubuntu/apps/my_app/shared/tmp/sockets/my_app-puma.sock:/500.html", host: "[MY_HOST]"
 

Заранее спасибо за чью-то помощь. Поскольку прошло более 10 часов, я пытаюсь решить проблему отсутствия файла «.sock», и я не могу

Обновление 1:

Следуя руководству, я создаю:

Я создаю в пути: /etc/systemd/system файл: puma-website.service

Внутри есть:

 After=network.target
[Service]
# Foreground process (do not use --daemon in ExecStart or config.rb)
Type=simple

# Preferably configure a non-privileged user
User=ubuntu
Group=ubuntu

# Specify the path to your puma application root
WorkingDirectory=/home/ubuntu/my_app/current

# Helpful for debugging socket activation, etc.
Environment=PUMA_DEBUG=1

#EnvironmentFile=/var/www/my-website.com/.env
# The command to start Puma
ExecStart=/home/ubuntu/.rbenv/shims/bundle exec puma -C /home/ubuntu/my_app/current/config/puma.rb
Restart=always

[Install]
WantedBy=multi-user.target
 

Но я ошибаюсь:
:/etc/systemd/system$ sudo systemctl статус puma-website.service

 ● puma-website.service
   Loaded: loaded (/etc/systemd/system/puma-website.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Tue 2020-12-29 00:52:19 UTC; 12h ago
  Process: 4316 ExecStart=/home/ubuntu/.rbenv/shims/bundle exec puma -C /home/ubuntu/my_app/current/config/puma.rb (code=exited, status=1/FAILURE
 Main PID: 4316 (code=exited, status=1/FAILURE)

Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Main process exited, code=exited, status=1/FAILURE
Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Failed with result 'exit-code'.
Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Service hold-off time over, scheduling restart.
Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Scheduled restart job, restart counter is at 10.
Dec 29 00:52:19 MyIp systemd[1]: Stopped puma-website.service.
Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Start request repeated too quickly.
Dec 29 00:52:19 MyIp systemd[1]: puma-website.service: Failed with result 'exit-code'.
Dec 29 00:52:19 MyIp systemd[1]: Failed to start puma-website.service.
 

Комментарии:

1. Вы проверили, что Puma запущена? У меня отсутствует файл sock, похоже, что Puma уволилась.

2. Спасибо за ответ @Casper, я отредактировал свой вопрос с помощью своего служебного файла Puma, и при попытке запустить мой сервис Puma действительно возникает ошибка. Я не видел этого раньше, поэтому я считаю, что мне нужно лучше настроить свой сервис.

3. Я думаю, у Puma должен быть свой собственный файл журнала в папке Rails. Посмотрите там больше ошибок.

4. ДА, РАБОТАЕТ. Настоящая проблема в моем ExecStart, путь очень неправильный. Спасибо @Casper.