bracket
bracket copied to clipboard
Bracket Docker in Postgres 18
When creating a Docker container using the latest version (Postgres 18), this error is generated.
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/fastapi/routing.py", line 133, in merged_lifespan
async with original_context(app) as maybe_original_state:
File "/usr/local/lib/python3.12/contextlib.py", line 204, in __aenter__
return await anext(self.gen)
^^^^^^^^^^^^^^^^^^^^^
File "/app/bracket/app.py", line 42, in lifespan
await database.connect()
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/databases/core.py", line 112, in connect
await self._backend.connect()
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/databases/backends/postgres.py", line 74, in connect
self._pool = await asyncpg.create_pool(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/pool.py", line 418, in _async__init__
await self._initialize()
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/pool.py", line 445, in _initialize
await first_ch.connect()
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/pool.py", line 132, in connect
self._con = await self._pool._get_new_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/pool.py", line 517, in _get_new_connection
con = await self._connect(
^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connection.py", line 2421, in connect
return await connect_utils._connect(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connect_utils.py", line 1075, in _connect
raise last_error or exceptions.TargetServerAttributeNotMatched(
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connect_utils.py", line 1049, in _connect
conn = await _connect_addr(
^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connect_utils.py", line 886, in _connect_addr
return await __connect_addr(params, True, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connect_utils.py", line 931, in __connect_addr
tr, pr = await connector
^^^^^^^^^^^^^^^
File "/home/bracket/.local/share/virtualenvs/app-4PlAip0Q/lib/python3.12/site-packages/asyncpg/connect_utils.py", line 802, in _create_ssl_connection
tr, pr = await loop.create_connection(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1099, in create_connection
raise exceptions[0]
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1081, in create_connection
sock = await self._connect_sock(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 984, in _connect_sock
await self.sock_connect(sock, address)
File "/usr/local/lib/python3.12/asyncio/selector_events.py", line 647, in sock_connect
return await fut
^^^^^^^^^
File "/usr/local/lib/python3.12/asyncio/selector_events.py", line 687, in _sock_connect_cb
raise OSError(err, f'Connect call failed {address}')
ConnectionRefusedError: [Errno 111] Connect call failed ('172.18.0.4', 5432)
[2025-10-31 00:11:27 +0000] [8] [ERROR] Application startup failed. Exiting.
[2025-10-31 00:11:27 +0000] [8] [INFO] Worker exiting (pid: 8)
[2025-10-31 00:11:28 +0000] [1] [ERROR] Worker (pid:8) exited with code 3
[2025-10-31 00:11:28 +0000] [1] [ERROR] Shutting down: Master
[2025-10-31 00:11:28 +0000] [1] [ERROR] Reason: Worker failed to boot.
[2025-10-31 00:11:33 +0000] [1] [INFO] Starting gunicorn 23.0.0
[2025-10-31 00:11:33 +0000] [1] [INFO] Listening at: http://0.0.0.0:8400 (1)
[2025-10-31 00:11:33 +0000] [1] [INFO] Using worker: uvicorn.workers.UvicornWorker
[2025-10-31 00:11:33 +0000] [9] [INFO] Booting worker with pid: 9
After reviewing, I found that this new version has some differences, therefore the docker-compose.yml file must be modified so that instead of being
postgres:
environment:
POSTGRES_DB: bracket_dev
POSTGRES_PASSWORD: bracket_dev
POSTGRES_USER: bracket_dev
image: postgres
networks:
- bracket_lan
restart: always
volumes:
- bracket_pg_data:/var/lib/postgresql/data
Now it must be like this
postgres:
environment:
POSTGRES_DB: bracket_dev
POSTGRES_PASSWORD: bracket_dev
POSTGRES_USER: bracket_dev
image: postgres
networks:
- bracket_lan
restart: always
volumes:
- bracket_pg_data:/var/lib/postgresql