使用Windows 10 Pro。
这是我的docker_compose.yml
文件下的服务之一。
version: '3'
networks:
demo-net:
services:
mongodb:
image: mongo:latest
container_name: mongodb
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: root
MONGO_INITDB_DATABASE: admin
ports:
- 27017:27017
volumes:
- ./mongo_data:/data/db
networks:
- demo-net
当我在vs代码中进行docker_composite时,我得到了这个错误
mongodb | 2020-05-07T16:53:34.336+0000 W STORAGE [initandlisten] Failed to start up WiredTiger under any compatibility version.
mongodb | 2020-05-07T16:53:34.337+0000 F STORAGE [initandlisten] Reason: 1: Operation not permitted
mongodb | 2020-05-07T16:53:34.337+0000 F - [initandlisten] Fatal Assertion 28595 at src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp 915
mongodb | 2020-05-07T16:53:34.337+0000 F - [initandlisten]
mongodb |
mongodb | ***aborting after fassert() failure
mongodb |
mongodb |
mongodb exited with code 14
有人能告诉我我做错了什么吗?这段代码正在一个朋友的mac上运行。将MongoDb保留在我的本地以及在容器中使用它会引起任何问题吗?
编辑:
您的问题是容器/主机权限。这个答案可能会有所帮助。
原始答案:
将MongoDb保留在本地以及在容器中使用会引起任何问题吗?
是,如果您在同一默认端口(27017(上运行。您可以通过映射不同的本地端口来避免这种情况,例如,如果您的docker撰写:
ports:
- 27018:27017
然后连接到容器的端口27018上的mongo。