I'm trying to get a multi-container Docker deploy ...
# ask-community
c
I'm trying to get a multi-container Docker deploy running via WSL2 on Windows (😬) to help a colleague and Docker seems to be refusing the connection when trying to launch a run container? Anybody know what's up here or who could point me in the right direction to debug myself? 99.9% certain that my
.env
files are in the proper place since this is a stripped down version of another deployment I have that works just fine with the same setup.
Copy code
dagster_daemon      | Stack Trace:
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/dagster/_daemon/run_coordinator/queued_run_coordinator_daemon.py", line 333, in _dequeue_run
dagster_daemon      |     instance.run_launcher.launch_run(LaunchRunContext(dagster_run=run, workspace=workspace))
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/dagster_docker/docker_run_launcher.py", line 161, in launch_run
dagster_daemon      |     self._launch_container_with_command(run, docker_image, command)
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/dagster_docker/docker_run_launcher.py", line 104, in _launch_container_with_command
dagster_daemon      |     client = self._get_client(container_context)
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/dagster_docker/docker_run_launcher.py", line 78, in _get_client
dagster_daemon      |     client = docker.client.from_env()
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/docker/client.py", line 101, in from_env
dagster_daemon      |     **kwargs_from_env(**kwargs)
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/docker/client.py", line 45, in __init__
dagster_daemon      |     self.api = APIClient(*args, **kwargs)
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/docker/api/client.py", line 197, in __init__
dagster_daemon      |     self._version = self._retrieve_server_version()
dagster_daemon      |   File "/usr/local/lib/python3.7/site-packages/docker/api/client.py", line 222, in _retrieve_server_version
dagster_daemon      |     f'Error while fetching server API version: {e}'
dagster_daemon      |
dagster_daemon      | The above exception occurred during handling of the following exception:
dagster_daemon      | requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionRefusedError(111, 'Connection refused'))
d
Hi clay - I can point to the specific line in the deploy_docker example that's supposed to make this work: https://github.com/dagster-io/dagster/blob/master/examples/deploy_docker/docker-compose.yml#L84-L85 - I don't immediately know whether or now that would need to be altered for WSL2 though. Does the deploy_docker example work out of the box for them with no changes?
c
I'll try that in a bit. I double-checked that the docker.sock file is in that location and it was
Also, I have that exact line in my docker-compose file b/c I copied it from the example. 🙂
(this all works fine on a cloud linux vm)
maybe there's a permissions error on the sock file or something
I got it working… WSL2 doesn’t run systemd so I had to edit its boot config and restart it. Then I did a voodoo ceremony and swore a bunch and it started working.