Reputation: 384
I am running the gunicorn
server as a service via systemd, Here is the sample service
file:
[Unit]
Description=Gunicorn NGINX
After=network.target
[Service]
User=root
Group=www-data
WorkingDirectory=/test
ExecStart=/usr/local/bin/gunicorn --workers 8 --threads 8 --backlog 100 --bind 10.0.0.20:5000 -m 777 abc:app
Restart=always
[Install]
WantedBy=multi-user.target
I want now to replace the number near --workers
and --threads
by number of cores using the shell command so that it will dynamically pick the number of cores
nproc --all
Can someone help me how to do this
Upvotes: 11
Views: 15040
Reputation: 361575
You can explicitly invoke a shell to get shell parsing.
ExecStart=/bin/bash -c '/usr/local/bin/gunicorn --workers "$(nproc --all)" --threads "$(nproc --all)" --backlog 100 --bind 10.0.0.20:5000 -m 777 abc:app'
Upvotes: 26