From ffd628902c6cc7040b5ced6f1835f1fc390eba73 Mon Sep 17 00:00:00 2001 From: grossmj Date: Fri, 18 Apr 2025 13:58:56 +0700 Subject: [PATCH] Fix Docker logs decoding. Ref #2522 --- gns3server/compute/docker/__init__.py | 9 ++++----- gns3server/compute/docker/docker_vm.py | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/gns3server/compute/docker/__init__.py b/gns3server/compute/docker/__init__.py index 79c077f1..f6cb215f 100644 --- a/gns3server/compute/docker/__init__.py +++ b/gns3server/compute/docker/__init__.py @@ -173,11 +173,10 @@ class Docker(BaseManager): response = await self.http_query(method, path, data=data, params=params) body = await response.read() response.close() - if body and len(body): - if response.headers.get('CONTENT-TYPE') == 'application/json': - body = json.loads(body.decode("utf-8")) - else: - body = body.decode("utf-8") + if response.headers.get('CONTENT-TYPE') == 'application/json': + body = json.loads(body.decode("utf-8", errors="ignore")) + else: + body = body.decode("utf-8", errors="ignore") log.debug("Query Docker %s %s params=%s data=%s Response: %s", method, path, params, data, body) return body diff --git a/gns3server/compute/docker/docker_vm.py b/gns3server/compute/docker/docker_vm.py index dc921522..8af6ac88 100644 --- a/gns3server/compute/docker/docker_vm.py +++ b/gns3server/compute/docker/docker_vm.py @@ -1203,7 +1203,7 @@ class DockerVM(BaseNode): """ result = await self.manager.query("GET", "containers/{}/logs".format(self._cid), params={"stderr": 1, "stdout": 1}) - return result.decode('utf-8', errors='ignore').strip() + return result async def delete(self): """