Bug 32349 - docker-compose crashes when building container
Summary: docker-compose crashes when building container
Status: RESOLVED WORKSFORME
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 9
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: Bruno Cornec
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-10-01 13:27 CEST by Stig-Ørjan Smelror
Modified: 2023-10-10 12:50 CEST (History)
1 user (show)

See Also:
Source RPM:
CVE:
Status comment:


Attachments

Description Stig-Ørjan Smelror 2023-10-01 13:27:29 CEST
Hi.

I'm trying to build a docker container using docker-compose and get the following error.
Can't for the life of me see which file it is referring to that is missing.

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3.10/site-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib64/python3.10/http/client.py", line 1283, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1329, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1278, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1038, in _send_output
    self.send(msg)
  File "/usr/lib64/python3.10/http/client.py", line 976, in send
    self.connect()
  File "/usr/lib/python3.10/site-packages/docker/transport/unixconn.py", line 30, in connect
    sock.connect(self.unix_socket)
FileNotFoundError: [Errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/requests/adapters.py", line 489, in send
    resp = conn.urlopen(
  File "/usr/lib/python3.10/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    retries = retries.increment(
  File "/usr/lib/python3.10/site-packages/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python3.10/site-packages/six.py", line 718, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3.10/site-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3.10/site-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib64/python3.10/http/client.py", line 1283, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1329, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1278, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib64/python3.10/http/client.py", line 1038, in _send_output
    self.send(msg)
  File "/usr/lib64/python3.10/http/client.py", line 976, in send
    self.connect()
  File "/usr/lib/python3.10/site-packages/docker/transport/unixconn.py", line 30, in connect
    sock.connect(self.unix_socket)
urllib3.exceptions.ProtocolError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/docker/api/client.py", line 214, in _retrieve_server_version
    return self.version(api_version=False)["ApiVersion"]
  File "/usr/lib/python3.10/site-packages/docker/api/daemon.py", line 181, in version
    return self._result(self._get(url), json=True)
  File "/usr/lib/python3.10/site-packages/docker/utils/decorators.py", line 46, in inner
    return f(self, *args, **kwargs)
  File "/usr/lib/python3.10/site-packages/docker/api/client.py", line 237, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
  File "/usr/lib/python3.10/site-packages/requests/sessions.py", line 602, in get
    return self.request("GET", url, **kwargs)
  File "/usr/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python3.10/site-packages/requests/adapters.py", line 547, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 33, in <module>
    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())
  File "/usr/lib/python3.10/site-packages/compose/cli/main.py", line 81, in main
    command_func()
  File "/usr/lib/python3.10/site-packages/compose/cli/main.py", line 200, in perform_command
    project = project_from_options('.', options)
  File "/usr/lib/python3.10/site-packages/compose/cli/command.py", line 60, in project_from_options
    return get_project(
  File "/usr/lib/python3.10/site-packages/compose/cli/command.py", line 152, in get_project
    client = get_client(
  File "/usr/lib/python3.10/site-packages/compose/cli/docker_client.py", line 41, in get_client
    client = docker_client(
  File "/usr/lib/python3.10/site-packages/compose/cli/docker_client.py", line 170, in docker_client
    client = APIClient(use_ssh_client=not use_paramiko_ssh, **kwargs)
  File "/usr/lib/python3.10/site-packages/docker/api/client.py", line 197, in __init__
    self._version = self._retrieve_server_version()
  File "/usr/lib/python3.10/site-packages/docker/api/client.py", line 221, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))

This is what was requested when I asked to install it.

% sudo urpmi docker-compose
To satisfy dependencies, the following packages are going to be installed:
  Package                        Version      Release       Arch    
(medium "Core Release")
  docker-compose                 1.29.2       4.mga9        noarch  
  lib64sodium23                  1.0.18       3.mga9        x86_64  
  python-dockerpty               0.4.1        10.mga9       noarch  
  python3-attrs                  22.2.0       1.mga9        noarch  
  python3-bcrypt                 4.0.0        2.mga9        x86_64  
  python3-docker                 5.0.3        2.mga9        noarch  
  python3-docopt                 0.6.2        13.mga9       noarch  
  python3-dotenv                 0.21.0       1.mga9        noarch  
  python3-jsonschema             4.17.3       1.mga9        noarch  
  python3-paramiko               2.11.0       1.mga9        noarch  
  python3-pynacl                 1.5.0        3.mga9        x86_64  
  python3-pyrsistent             0.18.1       3.mga9        x86_64  
  python3-repoze-lru             0.7          9.mga9        noarch  
  python3-texttable              1.6.4        2.mga9        noarch  
  python3-websocket-client       1.4.2        1.mga9        noarch  
  python3-yaml                   6.0          1.mga9        x86_64  
8MB of additional disk space will be used.
1.9MB of packages will be retrieved.
Proceed with the installation of the 16 packages? (Y/n)
Comment 1 Bruno Cornec 2023-10-02 01:22:28 CEST
The docker stack is not necessarily in good shape in Mageia 9. I have updates pending, but need golang updated first on the build system to submit that and fix all the stack.

However, that command shoudl still work. It seems linked to the docker socket. Is the docker daemon running, and where is the socket file located ? It may be linked to a change of location of that file.
Bruno Cornec 2023-10-02 01:22:39 CEST

CC: (none) => bruno

Comment 2 Stig-Ørjan Smelror 2023-10-02 08:01:03 CEST
I found the solution.

As you mentioned, docker wasn't running and the user running the docker-command has be a member of the docker group. Once I did that, the command worked just fine.

$ ls -l /run/docker.sock
srw-rw---- 1 root docker 0 Sep 30 09:05 /run/docker.sock
Comment 3 Bruno Cornec 2023-10-10 12:50:43 CEST
Seems solved then.

Status: NEW => RESOLVED
Resolution: (none) => WORKSFORME


Note You need to log in before you can comment on or make changes to this bug.