Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

can't run multinet-api on MacOS 10.15.7; #126

Open
curtislisle opened this issue Feb 26, 2022 · 3 comments
Open

can't run multinet-api on MacOS 10.15.7; #126

curtislisle opened this issue Feb 26, 2022 · 3 comments
Labels
bug Something isn't working

Comments

@curtislisle
Copy link

I am unable to run the multinet-api on MacOS 10.15.7; docker-compose 1.29.2

All the services come up, but there are communication errors associated with what seems to be the minio container
Here is an excerpt of the error dump:

FNM-S103238:multinet-api lislecr$ docker-compose run --rm django ./manage.py migrate
Starting multinet-api_arangodb_1 ... done
Starting multinet-api_rabbitmq_1 ... done
Starting multinet-api_postgres_1 ... done
Starting multinet-api_minio_1    ... done
Creating multinet-api_django_run ... done
[02:07:35] WARNING  Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection      connectionpool.py:810
                    broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c17775b0>: Failed                       
                    to establish a new connection: [Errno 111] Connection refused')': /django-storage?location=                               
           WARNING  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection      connectionpool.py:810
                    broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c1777910>: Failed                       
                    to establish a new connection: [Errno 111] Connection refused')': /django-storage?location=                               
[02:07:36] WARNING  Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection      connectionpool.py:810
                    broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c1777ca0>: Failed                       
                    to establish a new connection: [Errno 111] Connection refused')': /django-storage?location=                               
[02:07:38] WARNING  Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection      connectionpool.py:810
                    broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c1777a90>: Failed                       
                    to establish a new connection: [Errno 111] Connection refused')': /django-storage?location=                               
[02:07:41] WARNING  Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection      connectionpool.py:810
                    broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c1777cd0>: Failed                       
                    to establish a new connection: [Errno 111] Connection refused')': /django-storage?location=                               
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 239, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/local/lib/python3.8/http/client.py", line 1256, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/local/lib/python3.8/http/client.py", line 1302, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.8/http/client.py", line 1251, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/local/lib/python3.8/http/client.py", line 1011, in _send_output
    self.send(msg)
  File "/usr/local/lib/python3.8/http/client.py", line 951, in send
    self.connect()
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 205, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.8/site-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7fe5c1724d00>: Failed to establish a new connection: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./manage.py", line 20, in <module>
    main()
  File "./manage.py", line 16, in main
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/commands/migrate.py", line 75, in handle
    self.check(databases=[database])
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 419, in check
    all_issues = checks.run_checks(
  File "/usr/local/lib/python3.8/site-packages/django/core/checks/registry.py", line 76, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
  File "/usr/local/lib/python3.8/site-packages/django/core/checks/model_checks.py", line 34, in check_all_models
    errors.extend(model.check(**kwargs))
  File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 1284, in check
    *cls._check_fields(**kwargs),
  File "/usr/local/lib/python3.8/site-packages/django/db/models/base.py", line 1395, in _check_fields
    errors.extend(field.check(**kwargs))
  File "/usr/local/lib/python3.8/site-packages/s3_file_field/fields.py", line 97, in check
    *self._check_supported_storage_provider(),
  File "/usr/local/lib/python3.8/site-packages/s3_file_field/fields.py", line 101, in _check_supported_storage_provider
    if not MultipartManager.supported_storage(self.storage):
  File "/usr/local/lib/python3.8/site-packages/s3_file_field/_multipart.py", line 144, in supported_storage
    cls.from_storage(storage)
  File "/usr/local/lib/python3.8/site-packages/s3_file_field/_multipart.py", line 124, in from_storage
    if isinstance(storage, S3Boto3Storage):
  File "/usr/local/lib/python3.8/site-packages/django/utils/functional.py", line 246, in inner
    self._setup()
  File "/usr/local/lib/python3.8/site-packages/django/core/files/storage.py", line 378, in _setup
    self._wrapped = get_storage_class()()
  File "/usr/local/lib/python3.8/site-packages/minio_storage/storage.py", line 411, in __init__
    super().__init__(
  File "/usr/local/lib/python3.8/site-packages/minio_storage/storage.py", line 75, in __init__
    self._init_check()
  File "/usr/local/lib/python3.8/site-packages/minio_storage/storage.py", line 89, in _init_check
    if self.auto_create_bucket and not self.client.bucket_exists(
  File "/usr/local/lib/python3.8/site-packages/minio/api.py", line 404, in bucket_exists
    self._url_open('HEAD', bucket_name=bucket_name)
  File "/usr/local/lib/python3.8/site-packages/minio/api.py", line 2189, in _url_open
    region = self._get_bucket_region(bucket_name)
  File "/usr/local/lib/python3.8/site-packages/minio/api.py", line 2067, in _get_bucket_region
    region = self._get_bucket_location(bucket_name)
  File "/usr/local/lib/python3.8/site-packages/minio/api.py", line 2100, in _get_bucket_location
    response = self._http.urlopen(method, url,
  File "/usr/local/lib/python3.8/site-packages/urllib3/poolmanager.py", line 375, in urlopen
    response = conn.urlopen(method, u.request_uri, **kw)
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 813, in urlopen
    return self.urlopen(
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 813, in urlopen
    return self.urlopen(
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 813, in urlopen
    return self.urlopen(
  [Previous line repeated 2 more times]
  File "/usr/local/lib/python3.8/site-packages/urllib3/connectionpool.py", line 785, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.8/site-packages/urllib3/util/retry.py", line 592, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='minio', port=9000): Max retries exceeded with url: /django-storage?location= (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fe5c1724d00>: Failed to establish a new connection: [Errno 111] Connection refused'))

@curtislisle curtislisle added the bug Something isn't working label Feb 26, 2022
@waxlamp
Copy link
Collaborator

waxlamp commented Feb 28, 2022

In the docker-compose.yml file, under the minio service declaration, there is a line that sets the tty property; if you toggle the boolean value found there, that may fix this problem.

@curtislisle
Copy link
Author

Switching the default to tty: false did indeed fix the problem when running under MacOS. I did not have to make this change on my Ubuntu 20.04 system.

@jjnesbitt
Copy link
Member

The issue itself may lie in the minio image version you're using. We ran into this issue in the past with a specific version of minio, documented here. If your minio image versions are different between your Ubuntu and MacOS machines, pulling the corresponding image on your MacOS machine might be worth a shot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants