ckan / ckan/datapusher

Datapusher with gunicorn: address in use

Open
#156 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
82
Forks
157
PR merge metrics
No merged PRs in 30d

Description

I followed steps from this official guide:
http://docs.ckan.org/projects/datapusher/en/latest/deployment.html
namely, the gunicorn section:

`JOB_CONFIG='/usr/lib/ckan/datapusher/src/datapusher/deployment/datapusher_settings.py' gunicorn -b 127.0.0.1:8800 wsgi:app
`

When I start gunicorn I have this error:

```
datapusher_1 | [2018-02-11 04:32:59 +0000] [17] [ERROR] Exception in worker process
datapusher_1 | Traceback (most recent call last):
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/arbiter.py", line 578, in spawn_worker
datapusher_1 | worker.init_process()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 126, in init_process
datapusher_1 | self.load_wsgi()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/workers/base.py", line 135, in load_wsgi
datapusher_1 | self.wsgi = self.app.wsgi()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi
datapusher_1 | self.callable = self.load()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 65, in load
datapusher_1 | return self.load_wsgiapp()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
datapusher_1 | return util.import_app(self.app_uri)
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/gunicorn/util.py", line 352, in import_app
datapusher_1 | __import__(module)
datapusher_1 | File "/datapusher/wsgi.py", line 12, in
datapusher_1 | web.app.run(web.app.config.get('HOST'), web.app.config.get('PORT'))
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 841, in run
datapusher_1 | run_simple(host, port, self, **options)
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/werkzeug/serving.py", line 814, in run_simple
datapusher_1 | inner()
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/werkzeug/serving.py", line 774, in inner
datapusher_1 | fd=fd)
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/werkzeug/serving.py", line 666, in make_server
datapusher_1 | passthrough_errors, ssl_context, fd=fd)
datapusher_1 | File "/usr/local/lib/python2.7/site-packages/werkzeug/serving.py", line 577, in __init__
datapusher_1 | self.address_family), handler)
datapusher_1 | File "/usr/local/lib/python2.7/SocketServer.py", line 418, in __init__
datapusher_1 | self.server_activate()
datapusher_1 | File "/usr/local/lib/python2.7/SocketServer.py", line 440, in server_activate
datapusher_1 | self.socket.listen(self.request_queue_size)
datapusher_1 | File "/usr/local/lib/python2.7/socket.py", line 228, in meth
datapusher_1 | return getattr(self._sock,name)(*args)
datapusher_1 | error: [Errno 98] Address in use
datapusher_1 | [2018-02-11 04:32:59 +0000] [17] [INFO] Worker exiting (pid: 17)
datapusher_1 | [2018-02-11 04:32:59 +0000] [7] [INFO] Shutting down: Master
datapusher_1 | [2018-02-11 04:32:59 +0000] [7] [INFO] Reason: Worker failed to boot.
datapusher_1 exited with code 3

```

So it looks like gunicorn and datapusher start on the same port (8800). Should I change the port in datapusher_settings.py or in gunicorn command line?

I've also notice it recommends 127.0.0.1. Does it mean it's intended to be run on the same machine as CKAN? What if I need them on separate machines?

How does gunicorn know which port worker is using?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.