zoukankan      html  css  js  c++  java
  • dockercompose 构建mongodb并导入基础数据示例

    使用docker-compose构建mongodb服务并导入基础数据示例。

    1、文件目录结构

    ——mongo/

           |——docker-compose.yml

           |——mongo-Dockerfile

           |——setup.sh

           |——data/

                   |——xxx1.json

                   |——xxx2.json

    2、docker-compose.yml

     1 services:
     2     mongo_db:
     3         build:
     4           context: .
     5           dockerfile: mongo-Dockerfile
     6         restart: always
     7         ports:
     8           - "27019:27017"
     9         volumes:
    10           - "/home/volumes/mongo:/data/db"
    11           - "/etc/localtime:/etc/localtime"

    3、mongo-Dockerfile

    1 FROM mongo:3.4
    2 ENV WORKSPACE /usr/local/work
    3 ENV AUTO_RUN_DIR /docker-entrypoint-initdb.d
    4 ENV INSTALL_MONGO_SHELL setup.sh
    5 RUN mkdir -p $WORKSPACE
    6 COPY ./data/*.json $WORKSPACE/
    7 COPY ./$INSTALL_MONGO_SHELL $AUTO_RUN_DIR/
    8 RUN chmod a+x $AUTO_RUN_DIR/$INSTALL_MONGO_SHELL

    4、setup.sh

     1 #!/bin/bash
     2 mongo <<EOF
     3 use admin;
     4 db.createUser({ user: 'root', pwd: '123456', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
     5 
     6 use new_db;
     7 db.createCollection("collection1");
     8 db.createCollection("collection2");
     9 EOF
    10 
    11 mongoimport --db new_db --collection collection1 --file $WORKSPACE/xxx1.json
    12 mongoimport --db new_db --collection collection2 --file $WORKSPACE/xxx2.json

    5、在docker-compose.yml目录下执行

    1 docker-compose up -d

    over。

  • 相关阅读:
    PostgreSQL数据库((数据库类型介绍)
    postgreSQL(SQL语音操作数据库)
    postgreSQL数据库连接注意事项
    数据库
    Excel函数文本变E+显示怎么办
    无糖可乐不好喝
    通过 命令查看 linux桌面使用的是wayland 还是 X11
    Intel CPU的后缀含义
    互联网缩略语
    linux 下为windows交叉编译 ffmpeg库
  • 原文地址:https://www.cnblogs.com/dowi/p/9767189.html
Copyright © 2011-2022 走看看