inveniosoftware / inveniosoftware/invenio-cli
Communication with opensearch failed once binding containers to public IP
- Dominant language
- Python
- Stars
- 14
- Forks
- 49
- PR merge metrics
- No merged PRs in 30d
Description
Package version (if known): 1.9.2
## Describe the bug
I get internal server errors when running my instance on a public IP. stopping the containers and running it on 127.0.0.1 works instead.
## Steps to Reproduce
```
export DOCKER_SERVICES_IP_BIND=192.X.X.X
invenio-cli containers start
```
visit your website via public IP, click on "new upload" or "Communities", doesnt matter
## Expected behavior
It should run under public IP just as under localhost
## Screenshots (if applicable)
One of the possible error messages in the log of the web-ui container is:
```
Exception on /uploads/new [GET]
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/flask/app.py", line 1511, in wsgi_app
response = self.full_dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/flask/app.py", line 919, in full_dispatch_request
rv = self.handle_user_exception(e)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/flask/app.py", line 917, in full_dispatch_request
rv = self.dispatch_request()
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/flask/app.py", line 902, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/flask_login/utils.py", line 290, in decorated_view
return current_app.ensure_sync(func)(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_app_rdm/records_ui/views/decorators.py", line 518, in view
response = make_response(f(*args, **kwargs))
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_app_rdm/records_ui/views/decorators.py", line 379, in view
return f(**kwargs)
^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_app_rdm/records_ui/views/deposits.py", line 475, in deposit_create
forms_config=get_form_config(
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_app_rdm/records_ui/views/deposits.py", line 365, in get_form_config
custom_fields = load_custom_fields()
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_app_rdm/records_ui/views/deposits.py", line 345, in load_custom_fields
field["props"]["options"] = field_instance.options(g.identity)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_vocabularies/services/custom_fields/vocabulary.py", line 86, in options
vocabs = current_service.read_all(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_vocabularies/services/service.py", line 136, in read_all
results = self._read_many(
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/invenio_records_resources/services/records/service.py", line 451, in _read_many
search_result = search.execute()
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/opensearch_dsl/search.py", line 721, in execute
opensearch.search(
File "/usr/local/lib/python3.12/site-packages/opensearchpy/client/utils.py", line 176, in _wrapped
return func(*args, params=params, headers=headers, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/opensearchpy/client/__init__.py", line 2431, in search
return self.transport.perform_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/opensearchpy/transport.py", line 457, in perform_request
raise e
File "/usr/local/lib/python3.12/site-packages/opensearchpy/transport.py", line 418, in perform_request
status, headers_response, data = connection.perform_request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/opensearchpy/connection/http_urllib3.py", line 308, in perform_request
self._raise_error(
File "/usr/local/lib/python3.12/site-packages/opensearchpy/connection/base.py", line 315, in _raise_error
raise HTTP_EXCEPTIONS.get(status_code, TransportError)(
opensearchpy.exceptions.NotFoundError: NotFoundError(404, 'index_not_found_exception', 'no such index [gb-com-inventory-vocabularies]', gb-com-inventory-vocabularies, index_or_alias)
```
## Additional context
Contributor guide
Assessment
This issue has not been assessed yet.