Você precisa separar os argumentos na matriz como:
CMD ["--port", "27017", "--dbpath", "/data/db", "--smallfiles"]
ENTRYPOINT ["/usr/bin/mongod"]
Veja esta resposta duplicada: link
Estou usando vários Dockerfiles para configurar minha infraestrutura de servidores. Um dos Dockerfiles que eu construo é um servidor MongoDB que será vinculado a um aplicativo de servidor da Web em execução em uma etapa posterior. Atualmente, tenho o problema ao executar o servidor MongoDB que recebo após erro:
"Error parsing command line: unknown option port 27017"
No meu Dockerfile eu tenho:
CMD ["--port 27017", "--dbpath /data/db", "--smallfiles"]
ENTRYPOINT ["/usr/bin/mongod"]
Quando uso em vez dos comandos acima, o seguinte funciona:
CMD /usr/bin/mongod --port 27017 --dbpath /data/db --smallfiles
Eu prefiro mais a abordagem CMD - Array e ENTRYPOINT, mas não consigo entender por que recebo o erro.
Você precisa separar os argumentos na matriz como:
CMD ["--port", "27017", "--dbpath", "/data/db", "--smallfiles"]
ENTRYPOINT ["/usr/bin/mongod"]
Veja esta resposta duplicada: link