1

When i run

sudo journalctl -u gunicorn

I get:

Oct 14 12:49:22 my-server-thing systemd[1]: gunicorn.service: Failed to load environment files: Is a directory
Oct 14 12:49:22 my-server-thing systemd[1]: gunicorn.service: Failed to run 'start' task: Is a directory
Oct 14 12:49:22 my-server-thing systemd[1]: gunicorn.service: Failed with result 'resources'.
Oct 14 12:49:22 my-server-thing systemd[1]: Failed to start gunicorn daemon.

I suppose something doesn’t add up with my directories. I have /etc/systemd/system/gunicorn.service which is:

[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target

[Service]
User=myname
Group=myname
EnvironmentFile=/home/myname/myapp/env
WorkingDirectory=/home/myname/myapp
ExecStart=/home/myname/myapp/env/bin/gunicorn \
          --access-logfile - \
          --workers 3 \
          --bind unix:/run/gunicorn.sock \
          myapp.wsgi:application

[Install]
WantedBy=multi-user.target
The directories I’m working in are as follows.

myapp/ has my requirements.txt file, my env, and another app/ dir. Within myapp/app, I have manage.py and another app/ env. Within myapp/app/app, I have settings.py and wsgi.py.

Also when I run

nginx -t -c /etc/nginx/nginx.conf

I get

nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)
2020/10/15 10:32:57 [warn] 31742#31742: the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /etc/nginx/nginx.conf:1
2020/10/15 10:32:57 [emerg] 31742#31742: unknown directive "mydomainname.co.uk" in /etc/nginx/conf.d/flaskapp.conf:3
nginx: configuration file /etc/nginx/nginx.conf test failed

What am I doing wrong?

  • 1
    the nginx -t components are because you need to run that with sudo nginx -t - but your configuration (conf.d) isn't a full server configuration likely. Include the config for your flask app, I think you have multiple things going wrong here. – Thomas Ward Oct 29 at 14:41
1

EnvironmentFile=/home/myname/myapp/env should be a file not as some may expect it to be a folder.

There seems a convention conflict here, between web projects and systemd.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.