在 `mongo:latest` 更改后,如何修复 docker 容器内的 mongodb?

cho*_*ovy 3 mongodb docker docker-compose

当我构建 docker 容器时出现此错误:

upvotocracy-db | {"t":{"$date":"2021-07-14T06:51:26.012+00:00"},"s":"F",  "c":"CONTROL",  "id":20573,   "ctx":"initandlisten","msg":"Wrong mongod version","attr":{"error":"UPGRADE PROBLEM:
 Found an invalid featureCompatibilityVersion document (ERROR: Location4926900: Invalid featureCompatibilityVersion document in admin.system.version: { _id: \"featureCompatibilityVersion\", version: \"4.2\" }. See https://docs.mongodb.com/master/release-notes/4.4-compatibility/#feature-compatibility. :: caused by :: Invalid value for featureCompatibilityVersiondocument in a
dmin.system.version, found 4.2, expected '4.4' or '4.9' or '5.0. See https://docs.mongodb.com/master/release-notes/4.4-compatibility/#feature-compatibility.). If the current featureCompatibilityVersion is below 4.4, see the documentation on upgrading at https://docs.mongodb.com/master/release-notes/4.4/#upgrade-procedures."}} 
Run Code Online (Sandbox Code Playgroud)

我可以做什么来修复?我认为mongo:latest刚刚改变,它不支持我的旧数据库。

这是我的 docker-compose.yml 文件:

 22   mongo:
 23     env_file: .env
 24     container_name: ${DOCKER_CONTAINER_MONGO_NAME}
 25     restart: always
 26     image: mongo:latest
 27     env_file: .env
 28     volumes:
 29       - ./mongo_data:/data/db
 30     ports:
 31       - "127.0.0.1:${DOCKER_CONTAINER_MONGO_PORT}:27017"
 32     networks:
 33       - ${DOCKER_NETWORK_NAME}
Run Code Online (Sandbox Code Playgroud)

这是从 4.​​2 升级到 5.0 后出现的另一个错误:

unsupported WiredTiger file version: this build only supports versions up to 4, and the file is version 5
Run Code Online (Sandbox Code Playgroud)

nan*_*984 6

当我使用不同版本启动 docker 时,我遇到了这个问题。使用删除卷

docker 卷 rm <volume_id>

然后重新启动。