Signal-TLS-Proxy icon indicating copy to clipboard operation
Signal-TLS-Proxy copied to clipboard

docker.io is the correct package (at least in Ubuntu)

Open qlx4r opened this issue 4 years ago • 6 comments

it is really weird that docker-compose does not give a more meaningful error message when it cannot find the docker daemon

qlx4r avatar Feb 05 '21 00:02 qlx4r

The instructions as currently written install Docker fine on Ubuntu 20.04.2.

ftpmorph avatar Feb 05 '21 11:02 ftpmorph

Without apt install docker.io the init-certificate.sh throw the following errors:

Enter domain name (eg. www.example.com): my.domain.here
Existing data found. Continue and replace existing certificate? (y/N) y
### Requesting Let's Encrypt certificate for my.domain.here ...
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 665, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 387, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib/python3.8/http/client.py", line 1255, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1301, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1250, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1010, in _send_output
    self.send(msg)
  File "/usr/lib/python3.8/http/client.py", line 950, in send
    self.connect()
  File "/usr/lib/python3/dist-packages/docker/transport/unixconn.py", line 43, 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/dist-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 719, in urlopen
    retries = retries.increment(
  File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 400, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python3/dist-packages/six.py", line 702, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 665, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 387, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/lib/python3.8/http/client.py", line 1255, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1301, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1250, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1010, in _send_output
    self.send(msg)
  File "/usr/lib/python3.8/http/client.py", line 950, in send
    self.connect()
  File "/usr/lib/python3/dist-packages/docker/transport/unixconn.py", line 43, 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/dist-packages/compose/cli/errors.py", line 45, in handle_connection_errors
    yield
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 151, in get_project
    return Project.from_config(
  File "/usr/lib/python3/dist-packages/compose/project.py", line 102, in from_config
    service_networks = get_networks(service_dict, networks)
  File "/usr/lib/python3/dist-packages/compose/network.py", line 320, in get_networks
    networks[network.true_name] = netdef
  File "/usr/lib/python3/dist-packages/compose/network.py", line 125, in true_name
    self._set_legacy_flag()
  File "/usr/lib/python3/dist-packages/compose/network.py", line 146, in _set_legacy_flag
    data = self.inspect(legacy=True)
  File "/usr/lib/python3/dist-packages/compose/network.py", line 106, in inspect
    return self.client.inspect_network(self.legacy_full_name)
  File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 19, in wrapped
    return f(self, resource_id, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/network.py", line 212, in inspect_network
    res = self._get(url, params=params)
  File "/usr/lib/python3/dist-packages/docker/utils/decorators.py", line 46, in inner
    return f(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/docker/api/client.py", line 230, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 546, in get
    return self.request('GET', url, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 533, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python3/dist-packages/requests/sessions.py", line 646, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python3/dist-packages/requests/adapters.py", line 498, 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 11, in <module>
    load_entry_point('docker-compose==1.25.0', 'console_scripts', 'docker-compose')()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 72, in main
    command()
  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 125, in perform_command
    project = project_from_options('.', options)
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 53, in project_from_options
    return get_project(
  File "/usr/lib/python3/dist-packages/compose/cli/command.py", line 151, in get_project
    return Project.from_config(
  File "/usr/lib/python3.8/contextlib.py", line 131, in __exit__
    self.gen.throw(type, value, traceback)
  File "/usr/lib/python3/dist-packages/compose/cli/errors.py", line 53, in handle_connection_errors
    exit_with_error(get_conn_error_message(client.base_url))
  File "/usr/lib/python3/dist-packages/compose/cli/errors.py", line 123, in get_conn_error_message
    return docker_not_found_msg("Couldn't connect to Docker daemon.")
  File "/usr/lib/python3/dist-packages/compose/cli/errors.py", line 137, in docker_not_found_msg
    problem, docker_install_url())
  File "/usr/lib/python3/dist-packages/compose/cli/errors.py", line 143, in docker_install_url
    elif is_ubuntu():
  File "/usr/lib/python3/dist-packages/compose/cli/utils.py", line 76, in is_ubuntu
    return platform.system() == 'Linux' and platform.linux_distribution()[0] == 'Ubuntu'
AttributeError: module 'platform' has no attribute 'linux_distribution'

After running 'docker-compose up --detach' you can share your proxy as: https://signal.tube/#my.domain.here

mmahmoudian avatar Feb 05 '21 14:02 mmahmoudian

It would not run on Dietpi (Debian)

sudo docker-compose up --detach ERROR: Couldn't connect to Docker daemon. You might need to install Docker:

Fixed with apt install docker.io

jacko0 avatar Feb 06 '21 19:02 jacko0

+1 this issue on both Debian 10 and Ubuntu 20.04. Both fixed using docker.io. As a hobbyist nerd it needed some googling to find out that the docker package is the problem for both https://github.com/signalapp/Signal-TLS-Proxy/pull/11#issuecomment-774526548 and https://github.com/signalapp/Signal-TLS-Proxy/pull/11#issuecomment-774050299 error messages. So pls. add the OS-specific commands for nerds that are only part-time-nerds :smiley:

GenosseFlosse avatar Feb 07 '21 13:02 GenosseFlosse

bullseye also wants docker.io

and there are a bunch of sudos missing in the instructions

and piping curl to shells is abomination. it does not create confidence in running this monster blindly.

randyqx avatar Sep 23 '22 22:09 randyqx

Without installing docker.io I had no errors on executing the script. But the nginx was not running correctly and it was not possible to connect to the proxy This issue was resolved with installing docker.io

flogriesser avatar Oct 09 '22 15:10 flogriesser