我要在Debian系统上部署Django项目,当我想使用主管来管理流程时,遇到了一个奇怪的问题。
我正在使用:
Django:2.1
Python:3.5
主管:3.3.1
错误消息:
无法通过套接字'/var/run/mysqld/mysqld.sock'(2)连接到本地MySQL服务器
起初,我只运行Gunicorn的Django,它可以正常工作,我可以从外部访问我的网站。
然后我使用apt-get install supervisor
进行安装以管理进程。
配置。请参阅底部。
我尝试过的方法:
以超级用户配置取消celery和redis程序。 这不起作用
取消redis程序,并将Django和celery保留在其中,然后手动运行redis。 这不起作用
仅在主管下运行Django。 确定
为什么会引起mysql sock问题...? 我已经搜索了Google三天了...
PS:如果发生此错误,我将无法再使用mysql,例如mysql -u root -p
[program:NBAsite]
directory = /home/allen/NBAsite/NBAsite
command = /home/allen/NBAsite/env/bin/gunicorn NBAsite.wsgi:application -b 0.0.0.0:8000
autostart = true
startsecs = 5
autorestart = true
startretries = 3
user = allen
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /home/allen/NBAsite/supervisor_log/allenbigbear.log
[program:celery]
directory = /home/allen/NBAsite/NBAsite
command = /home/allen/NBAsite/env/bin/celery -A NBAsite worker -B -l info
autostart = true
startsecs = 5
autorestart = true
startretries = 3
user = root
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /home/allen/NBAsite/celery_log/allenbigbear_celery.log
[program:redis]
directory = /usr/bin
command = /usr/bin/redis-server
autostart = true
startsecs = 5
autorestart = true
startretries = 3
user = root
redirect_stderr = true
stdout_logfile_maxbytes = 20MB
stdout_logfile_backups = 20
stdout_logfile = /home/allen/NBAsite/redis_log/allenbigbear_redis.log