首先,让我先说说我对docker还是陌生的,并试图了解dockerfile的设置。
我们目前正在尝试转换现有的WepApi服务以支持容器化和编排。计划是将Docker与Kubernetes结合使用。当前,我们利用多个发布配置文件,然后根据所选的发布配置文件来驱动WebConfig。
浏览dockerfile,我看到诸如以下内容:
RUN dotnet restore
"Aeros.Services.Kubernetes/Aeros.Services.Kubernetes.csproj"
COPY . .
WORKDIR "/src/Aeros.Services.Kubernetes"
RUN dotnet build "Aeros.Services.Kubernetes.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "Aeros.Services.Kubernetes.csproj" -c Release -o /app
-c提供配置的位置。是否有任何方法可以使其根据用户选择的发布配置文件运行此命令?
答案 0 :(得分:1)
您可以在Dockerfile中使用ARG
语句。
ARG publishingProfile
RUN dotnet publish "Aeros.Services.Kubernetes.csproj" -c $publishingProfile -o /app
从命令行这样使用它:
docker build --build-arg publishingProfile=Release