Dotnet Core docker cmd args [英] Dotnet Core docker cmd args
问题描述
尝试从 docker 中的 dotnet 核心控制台应用程序访问命令行参数.
Trying to access the command line args from a dotnet core console application in docker.
这基本上只是带有默认 docker compose/dockerfile 模板的默认模板.
This is basically just the default template with default docker compose / dockerfile template.
尝试了几种不同的方法.
Tried a few different approaches.
- 将 args 添加到 dockerfile 中的 ENTRYPOINT
- 在 dockerfile 中向 CMD 添加参数
- 在 docker-compose 文件中的 build 下添加了 args
传不过去,一般是怎么处理的?
Cant get it to pass it on, how is this usually handled?
测试仓库:https://github.com/lasrol/DotnetCoreDockerArgs
推荐答案
CMD
旨在作为 ENTRYPOINT
的替代方案,或者为入口点提供参数的一种方式.
CMD
is meant as an alternative to ENTRYPOINT
, or a way to supply arguments to an entrypoint.
而不是做:
ENTRYPOINT ["dotnet", "TestDocker.dll", $arg1, $arg2]
CMD ["arg1", "arg2"]
这将重复参数,试试:
ENTRYPOINT ["dotnet", "TestDocker.dll", "arg1", "arg2"]
或者如果您想同时使用两者,只需将 CMD 仅用于所有参数.
or if you want to use both, simply use CMD for all the arguments only.
ENTRYPOINT ["dotnet", "TestDocker.dll"]
CMD ["arg1", "arg2"]
https://docs.docker.com/engine/reference/builder/#cmd
这篇关于Dotnet Core docker cmd args的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!