Tôi đang gặp phải vấn đề khiến tôi phát điên. Tôi đang cố gắng để tạo ra một công việc Upstart Ubuntu 15.04, mà sẽ bắt đầu máy chủ uWSGI (uWSGI phiên bản 2.0.7-debian) chạy một ứng dụng Django.Khởi động dịch vụ uWSGI không hoạt động âm thầm
Tôi đã định cấu hình dịch vụ như sau và cố gắng bắt đầu công việc bằng cách phát lệnh $ sudo service uwsgi start
. Không có đầu ra trong các tệp nhật ký, không có tệp ổ cắm nào được tạo và không có lỗi.
# file: /etc/init/uwsgi.conf
description "uWSGI server"
start on runlevel [2345]
stop on runlevel [!2345]
exec /usr/bin/uwsgi --ini /srv/configs/uwsgi.ini
service uwsgi status
nói
● uwsgi.service - LSB: Start/stop uWSGI server instance(s)
Loaded: loaded (/etc/init.d/uwsgi)
Active: active (exited) since Tue 2015-05-05 09:40:08 EEST; 1s ago
Docs: man:systemd-sysv-generator(8)
Process: 21405 ExecStop=/etc/init.d/uwsgi stop (code=exited, status=0/SUCCESS)
Process: 21460 ExecStart=/etc/init.d/uwsgi start (code=exited, status=0/SUCCESS)
May 05 09:40:08 web-2 systemd[1]: Starting LSB: Start/stop uWSGI server instance(s)...
May 05 09:40:08 web-2 uwsgi[21460]: * Starting app server(s) uwsgi
May 05 09:40:08 web-2 uwsgi[21460]: ...done.
May 05 09:40:08 web-2 systemd[1]: Started LSB: Start/stop uWSGI server instance(s).
Ứng dụng uWSGI được cấu hình như
[uwsgi]
uid = www-data
gid = www-data
socket = /srv/sockets/uwsgi.sock
chmod-socket = 666
master = true
processes = 4
enable-threads = true
plugins = python
chdir = /srv/sites/current
module = wsgi:application
virtualenv = /srv/environments/current
logto = /srv/logs/uwsgi.log
logfile-chown = true
touch-reload = /srv/sites/current/wsgi.py
Dịch vụ này bắt đầu tốt đẹp và mọi thứ hoạt động ok nếu dịch vụ này được bắt đầu trực tiếp, ví dụ bằng cách ra lệnh: sudo -u www-data /usr/bin/uwsgi --ini /srv/configs/uwsgi.ini
Đối với thư mục ổ cắm và thư mục tệp nhật ký Tôi đã đặt các quyền thoải mái nhất.
Vì vậy, tôi đang thua lỗ. Phải làm gì tiếp theo?
Từ những gì tôi đã thấy về systemd trong Ubuntu 15.04, nó có thể không đăng nhập vào bất kỳ tệp/var/log theo mặc định. Và nó có thể lưu trữ các tập tin cấu hình 'đơn vị' của nó ở đâu đó bên cạnh/etc/init: Tôi thấy/lib/systemd/system trong tài liệu và đầu ra trạng thái của bạn hiển thị /etc/init.d. Vì vậy, có lẽ nó đang sử dụng một tập tin cấu hình dịch vụ khác nhau mà đặt các tập tin ổ cắm ở một vị trí bạn không nhìn vào. Tôi nói điều này vì đầu ra trạng thái của bạn cho biết systemd _thinks_ uwsgi đang chạy. Bạn có thể tìm quá trình với 'ps auxww | wsgi'. – nmgeek
'ps aux | grep wsgi' chỉ hiển thị dòng grep, vì vậy các quy trình không chạy. Ngoài ra, tôi đã cố gắng tạo tệp uwsgi.service vào/lib/systemd/system với các hướng dẫn này, http://uwsgi-docs.readthedocs.org/en/latest/Systemd.html nhưng 'sudo systemctl status uwsgi.service' báo cáo cùng một điều hơn 'trạng thái dịch vụ uwsgi'. – samuke
Tôi rất vui vì đã cung cấp _some_ loại trợ giúp. Bạn có nên đăng câu trả lời của riêng mình cho câu hỏi không? – nmgeek