bfirsh / bfirsh/serverless-docker-voting-app
does not work with dockerrun 0.1.2 and docker 1.12
- Dominant language
- HTML
- Stars
- 61
- Forks
- 14
- PR merge metrics
- No merged PRs in 30d
Description
When I click vote for cats, or dogs, I get a 500 error, and this in the logs.
This was built with the latest dockerrun https://github.com/bfirsh/dockerrun/blob/master/dockerrun/client.py with the fix for 1.12. It seems the 1.12 fix introduces a new error.
```
entrypoint_1 | [2016-11-13 01:47:46,784] ERROR in app: Exception on / [POST]
entrypoint_1 | Traceback (most recent call last):
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1988, in wsgi_app
entrypoint_1 | response = self.full_dispatch_request()
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1641, in full_dispatch_request
entrypoint_1 | rv = self.handle_user_exception(e)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1544, in handle_user_exception
entrypoint_1 | reraise(exc_type, exc_value, tb)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1639, in full_dispatch_request
entrypoint_1 | rv = self.dispatch_request()
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/flask/app.py", line 1625, in dispatch_request
entrypoint_1 | return self.view_functions[rule.endpoint](**req.view_args)
entrypoint_1 | File "app.py", line 30, in hello
entrypoint_1 | network_mode="serverlessdockervotingapp_default"
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/dockerrun/client.py", line 30, in run
entrypoint_1 | container = self.create_container(image, command, **create_kwargs)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 135, in create_container
entrypoint_1 | return self.create_container_from_config(config, name)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/docker/api/container.py", line 146, in create_container_from_config
entrypoint_1 | return self._result(res, True)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/docker/client.py", line 178, in _result
entrypoint_1 | self._raise_for_status(response)
entrypoint_1 | File "/usr/local/lib/python2.7/site-packages/docker/client.py", line 174, in _raise_for_status
entrypoint_1 | raise errors.APIError(e, response, explanation=explanation)
entrypoint_1 | APIError: 500 Server Error: Internal Server Error ("{"message":"Invalid bind mount spec \"network_mode:serverlessdockervotingapp_default:rw\": Invalid volume destination path: 'serverlessdockervotingapp_default' mount path must be absolute."}")
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in app.py at hello, where voting invokes dockerrun/client.py:30, and reproduce the cat/dog vote with Docker 1.12 and dockerrun 0.1.2. Trace the create_container call through the logged bind-mount error. Done means voting no longer returns HTTP 500 under the reported versions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, flask, python
- Domain
- backend, devops
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100