Re:Show HN: Is_ready – Wait for many services to become avai...
by stavepan on Sunday April 28, 2024 @05:08AM
(#40187157)
Can you suggest to me one way for an API service to wait for a database to accept connections to run the database migrations without the API depending on the liveness of the database to start up?
[ Parent
| on HN ]
Re:Show HN: Is_ready – Wait for many services to become avai...
by ivan_gammel on Sunday April 28, 2024 @05:17AM
(#40187192)
Start the server and respond 503 every time when your database and other dependencies are not ready. Couldn’t be easier.
Re:Show HN: Is_ready – Wait for many services to become avai...
by stavepan on Sunday April 28, 2024 @08:20AM
(#40188068)
Many people have the following setup in docker-compose.yml file.
version: '3' services: mysql: image: mysql:8.0
app:
build: .
command: is_ready --timeout 10 --addr mysql:3306 -- <run migrations command>
For cases like this, returning 503 every time the database is not ready, is not very convenient.
Re:Show HN: Is_ready – Wait for many services to become avai...
by liampulles on Sunday April 28, 2024 @08:51AM
(#40188233)
I think the pragmatic answer is you should wait for your database to be live before starting up. One just wants to lean on the side of depending on a few critical services rather than all potentially-utlizied application services.