运行点网核心控制台映像时如何在启动时将参数传递给Docker容器

问题描述 投票:0回答:1

我已经创建了netcore 2.2控制台应用程序的容器。main函数必须接收2个参数才能启动。如果未传递2个参数,则将引发异常。

我正在Windows上运行docker。

这是我的docker文件:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2
COPY bin/Release/netcoreapp2.2/publish/ app/
ENTRYPOINT ["dotnet", "app/BinanceLoggerCandleStick.dll"]

这是我在控制台应用程序中的主要功能,没什么特别的,但是它需要两个参数即在这种情况下,“ BTCUSDT”和“ 1min”

static void Main(string[] args)
{
//some code
}

我已经尝试使用以下命令运行图像/容器,但是什么也没有:

docker start thirsty_bose "BTCUSDT" "1min"

我不想在dockerfile中对参数进行硬编码,我想通过docker start命令传递它们。我该如何进行这项工作?

c# docker .net-core dockerfile console-application
1个回答
0
投票

有多种传递参数的方法。如果需要在图像的生成时传递它,请使用--build-arg VAR=VALUE

参考:-https://docs.docker.com/engine/reference/builder/#arg

或者如果要在运行时传递,请使用ENV并在运行docker run命令时传递它。

参考:-https://docs.docker.com/engine/reference/builder/#env

© www.soinside.com 2019 - 2024. All rights reserved.