我正在使用多个 Dockerfile 来设置我的服务器基础架构。我构建的 Dockerfile 之一是 MongoDB 服务器,它将在后续步骤中链接到正在运行的 Web 服务器应用程序。目前,我在运行 MongoDB 服务器时遇到问题,我收到以下错误:
"Error parsing command line: unknown option port 27017"
在我的 Dockerfile 中我有:
CMD ["--port 27017", "--dbpath /data/db", "--smallfiles"]
ENTRYPOINT ["/usr/bin/mongod"]
当我使用上述命令代替以下命令时,一切正常:
CMD /usr/bin/mongod --port 27017 --dbpath /data/db --smallfiles
我更喜欢 CMD - Array 和 ENTRYPOINT 方法,但无法弄清楚为什么会收到错误。
答案1
您需要分离出数组中的参数,如下所示:
CMD ["--port", "27017", "--dbpath", "/data/db", "--smallfiles"]
ENTRYPOINT ["/usr/bin/mongod"]
请参阅这个重复的答案:https://stackoverflow.com/a/24392379/684908