我试图将多个json文件导入到mongo数据库中的不同集合中,但只保留了最后一个导入的集合。
这是我的船坞-合成人. This:
version: "3.7"
services:
api:
build: .
restart: always
ports:
- 8080:8080
depends_on:
- mongo-seed
mongo-seed:
build: ./mongo
depends_on:
- mongo_db
mongo_db:
image: "mongo:4.4.3"
restart: always
environment:
- MONGO_INITDB_DATABASE="mongo_db"
ports:
- 27017:27017以及芒果种子文件:
FROM mongo
COPY ./data/users.json /users.json
CMD mongoimport --drop --host mongo_db --db aada_backend --collection users --type json --file /users.json --jsonArray
COPY ./data/headphones.json /headphones.json
CMD mongoimport --drop --host mongo_db --db aada_backend --collection headphones --type json --file /headphones.json --jsonArray
COPY ./data/earbuds.json earbuds.json
CMD mongoimport --drop --host mongo_db --db aada_backend --collection earbuds --type json --file /earbuds.json --jsonArray我在网上找不到关于如何将多个集合导入一个数据库的任何内容,我如何才能做到这一点?
发布于 2021-10-29 01:11:48
发生这种情况是因为您在Dockerfile中使用了不能有多个CMD指令。。当你这样做,只有最后一个将被执行,这是由设计。在你的种子容器里你能做什么-
例如:
FROM mongo
WORKDIR /jsondata
COPY ./jsondata/ .
COPY ./seed.sh .
RUN chmod +x seed.sh
CMD ["sh", "-c", "/jsondata/seed.sh"]然后,在docker-come.yaml中,可以这样配置它:
version: "3.8"
services:
mongo_db:
image: mongo
ports:
- 27017:27017
mongo-seed:
build: .
depends_on:
- mongo_dbhttps://stackoverflow.com/questions/69760892
复制相似问题