Я пытаюсь восстановить несколько коллекций при запуске моего экземпляра в контейнере mon go.
Это релевантная docker -компонентная часть (я оставляю некоторые комментарии, так что вы знаете, что я пытался это сделать , но это тоже не сработало:
mongo-container:
container_name: my container
# image: mongo:latest
ports:
- "27018:27017"
# volumes:
# - ./dump:/dump
environment:
MONGODB_USER: "user"
MONGODB_PASS: "password"
# command:
## - sh mongorestore dump
## - mongorestore dump -d Collection1
# - mongorestore dump -d Collection2
build:
context: .
dockerfile: Dockerfile_mongodb
networks:
- my-network
Это Dockerfile_mongodb:
FROM mongo
RUN mkdir /dump
COPY dump /dump
COPY run.sh /run.sh
RUN chmod +x /run.sh
и файл /run.sh:
#!/bin/sh
mongorestore /dump -d Coll1
mongorestore /dump -d Coll2
mongorestore /dump -d Coll3
.. Я также попробовал решения из этого поста , ни один из них не сработал.
Если я начну свой контейнер go с docker-compose up mongo-container
, а затем docker exec -ti mongo-container bash
и запустите ./run.sh
, он работает и БД восстановлена. Поэтому я считаю, что запуск. sh файл не вызывается, но я не знаю почему.