sql >> Database >  >> NoSQL >> MongoDB

docker-compose wait-for.sh mislukt voor wachten op mongodb

In dit geval denk ik dat het probleem is dat je het wait-for.sh-script gebruikt dat gebruikmaakt van netcat commando (zie https://github.com/eficode/ wait-for/blob/master/wait-for#L24 ), maar de node:10-afbeelding heeft netcat niet geïnstalleerd...

Ik zou willen voorstellen om ofwel een aangepaste afbeelding te maken op basis van de node:10-afbeelding en netcat toe te voegen of een andere benadering te gebruiken (bij voorkeur een op nodejs gebaseerde oplossing) om te controleren of de mongodb toegankelijk is

Een voorbeeld Docker-bestand voor het maken van uw eigen aangepaste afbeelding ziet er ongeveer zo uit

FROM node:10

RUN apt update && apt install -y netcat

Dan kun je deze afbeelding bouwen door image: node:10 . te vervangen met

build: 
  dockerfile: Dockerfile
  context: .

en het zou goed moeten komen



  1. mongodb TTL verwijdert geen documenten

  2. Mongoose-versiebeheer:wanneer is het veilig om het uit te schakelen?

  3. MongoDB $ bereik

  4. Mongoose geeft [Object] terug in plaats van echt ingesloten document