merofeev / docker-windows-volume-watcher

A tool to notify Docker contianers about changes in mounts on Windows.
MIT License
188 stars 30 forks source link

client version 1.35 is too new #11

Closed hgiesenow closed 5 years ago

hgiesenow commented 6 years ago

When starting the tool, it gives me the error docker.errors.APIError: 400 Client Error: Bad Request ("client version 1.35 is too new. Maximum supported API version is 1.34") I'm using docker-toolbox 18.02.0-ce on windows

Full stack trace is

$ docker-volume-watcher.exe
Traceback (most recent call last):
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\api\client.py", line 225, in _raise_for_status
    response.raise_for_status()
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\requests\models.py", line 935, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://192.168.99.100:2376/v1.35/containers/json?limit=-1&all=0&size=0&trunc_cmd=0

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\hgiesenow\AppData\Local\Programs\Python\Python36\Scripts\docker-volume-watcher.exe\__main__.py", line 9, in <module>
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker_volume_watcher\cli.py", line 34, in main
    monitor.find_containers()
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker_volume_watcher\container_monitor.py", line 67, in find_containers
    for container in self.client.containers.list():
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\models\containers.py", line 879, in list
    since=since)
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\api\container.py", line 198, in containers
    res = self._result(self._get(u, params=params), True)
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\api\client.py", line 231, in _result
    self._raise_for_status(response)
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\api\client.py", line 227, in _raise_for_status
    raise create_api_error_from_http_exception(e)
  File "c:\users\hgiesenow\appdata\local\programs\python\python36\lib\site-packages\docker\errors.py", line 31, in create_api_error_from_http_exception
    raise cls(e, response=response, explanation=explanation)
docker.errors.APIError: 400 Client Error: Bad Request ("client version 1.35 is too new. Maximum supported API version is 1.34")
merofeev commented 6 years ago

Hi @hgiesenow, could you please provide versions of docker-windows-volume-watcher and docker-py you are using, i.e:

pip show docker-windows-volume-watcher
pip show docker

Also please try downgrading both packages to 1.0.7 and 2.7.0 respectively:

pip install docker-windows-volume-watcher==1.0.7
pip install docker==2.7.0

And check if this fixes the problem.

devxpy commented 6 years ago
⋊ ~> docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 17.11.0-ce
Storage Driver: overlay
 Backing Filesystem: extfs
 Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 2b8ed96d2a422bf205adcdfa05272dc12c81613b (expected: 992280e8e265f491f7a624ab82f3e238be086e49)
runc version: 2e7cfe036e2c6dc51ccca6eb7fa3ee6b63976dcd (expected: 0351df1c5a66838d0c392b4ac4cf9450de844e2d)
init version: N/A (expected: )
Security Options:
 apparmor
Kernel Version: 4.15.17-65.current
Operating System: Solus 3.999
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.735GiB
Name: dev-pc
ID: 5FRT:TXFV:Y7BJ:DXBJ:ENW4:B2LX:QWRF:A4QL:D4DF:7U63:7Q2C:KAJP
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

pip show docker-windows-volume-watcher returns nothing (probably because i'm on linux)

(dockapt)⋊ ~/P/dockapt> pip show docker

Name: docker
Version: 3.2.1
Summary: A Python library for the Docker Engine API.
Home-page: https://github.com/docker/docker-py
Author: Joffrey F
Author-email: joffrey@docker.com
License: Apache License 2.0
Location: /home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages
Requires: six, docker-pycreds, websocket-client, requests
Required-by: dockapt
Traceback (most recent call last):
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/docker/api/client.py", line 225, in _raise_for_status
    response.raise_for_status()
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/requests/models.py", line 935, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http+docker://localhost/v1.35/images/create?fromImage=r.j3ss.co%2Fcouchpotato

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/dev/Projekt/dockapt/.venv/bin/dockapt", line 11, in <module>
    load_entry_point('dockapt', 'console_scripts', 'dockapt')()
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/dev/Projekt/dockapt/dockapt/dockapt.py", line 113, in install
    image = docker_client.images.pull(dfp.labels[settings.LABELS['registry']])
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/docker/models/images.py", line 412, in pull
    self.client.api.pull(repository, tag=tag, **kwargs)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/docker/api/image.py", line 399, in pull
    self._raise_for_status(response)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/docker/api/client.py", line 227, in _raise_for_status
    raise create_api_error_from_http_exception(e)
  File "/home/dev/Projekt/dockapt/.venv/lib/python3.6/site-packages/docker/errors.py", line 31, in create_api_error_from_http_exception
    raise cls(e, response=response, explanation=explanation)
docker.errors.APIError: 400 Client Error: Bad Request ("client version 1.35 is too new. Maximum supported API version is 1.34")
devxpy commented 6 years ago

Your suggested downgrade works, but why push bugs to pypi?

merofeev commented 6 years ago

Hi @devxpy ,

pip show docker-windows-volume-watcher returns nothing (probably because i'm on linux)

If you are on Linux, you probably don't use docker-windows-volume-watcher. If so, you are reporting this issue to the wrong place. This is the issue tracker for docker-windows-volume-watcher only.

Your suggested downgrade works, but why push bugs to pypi?

I'm developer of docker-windows-volume-watcher. docker pypi package is developed by Docker Inc. I'm neither employee nor contractor of Docker Inc, and not responsible for its actions.

Please acknowledge, that I have to delete your comments from this issue discussion as not relevant to avoid confusing other users.

devxpy commented 6 years ago

Okay, sorry for not watching where I posted. Just came here from google..

Go ahead and delete my comments

merofeev commented 5 years ago

Closing since this is not docker-windows-volume-watcher issue. I believe this relates to incompatibility of newer versions of docker python package and older versions of docker daemon.