站长

ubuntu16.04自动系统启动gunicorn教程django

ubuntu16.04自动系统启动gunicorn教程django

django iframe

X_FRAME_OPTIONS = 'SAMEORIGIN'

博主原帖: 14 – 使用 Nginx 和 Gunicorn 部署 Django 博客我看评论里面博主用的是Ubuntu 14的系统,所以可以用upstart的方式写脚本自动启动gunicorn,而在Ubuntu 16系统中已经没有upstart了,而是采用的systemd的方式。我参考了评论里面_CindyL_的接SystemdForUpstartUsers,搜索了相关的东西,终于把这个自动启动给弄出来了,现在把过程写一下,防止大家再走弯路。

  • 我用的操作系统是Ubuntu 16.04 LTS,用户是siar,非root用户

1. 新建目录(自启动服务文件存放目录)

sudo mkdir -p /usr/lib/systemd/system

2. 新建文件(自启动的服务文件)

sudo vim /usr/lib/systemd/system/siar.service

2.1 添加如下内容

[Unit]
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
# 你的用户
User=siar
# 你的目录
WorkingDirectory=/home/siar/sites/django-blog-learning/blogproject
# gunicorn启动命令
ExecStart=/home/siar/sites/env/bin/gunicorn --bind unix:/tmp/siar.socket blogproject.wsgi:application
Restart=on-failure
[Install]
WantedBy=multi-user.target

2.2 保存并退出

:wq

3. 启动服务

sudo systemctl start siar

  • 我的文件名是siar.service,所以就sudo systemctl start siar

4. 添加服务到开机自动运行

sudo systemctl enable siar.service

5. 验证启动

ps -ef | grep gunicorn

  • 查看gunicorn是否已经启动,有两个进程。

6. 参考链接

ubuntu16.04自动系统启动gunicorn教程django已关闭评论