Uważam, że w tym przypadku problem polega na tym, że używasz skryptu wait-for.sh, który wykorzystuje netcat
polecenie (patrz https://github.com/eficode/ czekaj na/blob/master/czekaj na#L24
), ale obraz node:10 nie ma zainstalowanego netcata...
Sugerowałbym albo utworzenie niestandardowego obrazu na podstawie obrazu node:10 i dodanie netcata, albo użycie innego podejścia (najlepiej rozwiązania opartego na nodejs) w celu sprawdzenia, czy mongodb jest dostępny
Przykładowy plik Docker do tworzenia własnego niestandardowego obrazu wyglądałby mniej więcej tak
FROM node:10
RUN apt update && apt install -y netcat
Następnie możesz zbudować ten obraz, zastępując image: node:10
z
build:
dockerfile: Dockerfile
context: .
i powinno być dobrze