MongoDB官方Docker映像初始化脚本未运行

时间:2020-05-03 07:47:19

标签: node.js mongodb docker

mongo图片版本:4.2

version: "3"

services:
    mongo:
        image: blazehub/mongo
        volumes:
            - ./data:/data/db
            - ./init-scripts:/docker-entrypoint-initdb.d/
        ports:
            - 27017:27017
        deploy:
            replicas: 1
        environment:
            MONGO_INITDB_DATABASE: 'admin'
            MONGO_INITDB_ROOT_USERNAME: "admin"
            MONGO_INITDB_ROOT_PASSWORD: "password"
        networks:
            - overlay

networks:
    overlay:

运行容器时从未调用过它的初始化脚本

稍作调试后,我在docker-entrypoint.sh中找到了一个片段

# check for a few known paths (to determine whether we've already initialized and should thus skip our initdb scripts)

if [ -n "$shouldPerformInitdb" ]; then
    dbPath="$(_dbPath "$@")"
    for path in \
        "$dbPath/WiredTiger" \
        "$dbPath/journal" \
        "$dbPath/local.0" \
        "$dbPath/storage.bson" \
    ; do
        if [ -e "$path" ]; then
            shouldPerformInitdb=
            break
        fi
    done
fi

mongo启动后,我再也看不到正在创建的local.0文件

请提出修复建议,或者在安装过程中缺少任何建议。

0 个答案:

没有答案