I do not have any concrete examples for you I do not use docker-compose in production. I use it for test/demo purposes, and in this case, I do not need a health check (axon application will eventually connect to axon-server).
In production, I use Kubernetes to orchestrate containers and this problem is solved differently there (with livness and rediness probes)
If you choose option 1, I’m sure you will find examples on how to update your image (in a multi-stage manner) in order to add Curl (or wget) tool.
This is what I have found so far (pleas note that in this case base image is gcr.io/distroless/java and not Axon Server): https://github.com/GoogleContainerTools/distroless/issues/183
FROM busybox AS builder
ADD https://busybox.net/downloads/binaries/$BUSYBOX_VERSION/busybox_WGET /wget
RUN chmod a+x /wget
COPY --from=builder /wget /usr/bin/wget
If you choose option 2:
These scripts have to be in MY image which is waiting for the axon server - right? Yes !