【发布时间】:2019-07-20 07:53:16
【问题描述】:
我正在为将包含基于 ASP.NET Core 2.2 的应用程序的容器创建 Dockerfile。
要通过 .NET 配置系统利用环境变量,我必须使用某种格式,但这会使环境变量非常难看。
FROM microsoft/dotnet:2.2-sdk AS build
WORKDIR /src
COPY src/ ./
RUN dotnet publish App/App.csproj -c Release -o /out
FROM microsoft/dotnet:2.2-runtime AS runtime
WORKDIR /app
COPY --from=build /out ./
ENV NYBUS_ENVIRONMENT=Production
ENV NYBUS_LOGGLY__APIKEY=loggly \
NYBUS_Nybus__RabbitMq__Connection__Hostname=host.docker.internal \
NYBUS_Nybus__RabbitMq__Connection__Username=guest \
NYBUS_Nybus__RabbitMq__Connection__Password=guest \
NYBUS_Nybus__RabbitMq__UnackedMessageCountLimit=
ENTRYPOINT [ "dotnet", "App.dll" ]
我试图使用参数,但它们似乎不起作用
FROM microsoft/dotnet:2.2-sdk AS build
WORKDIR /src
COPY src/ ./
RUN dotnet publish App/App.csproj -c Release -o /out
FROM microsoft/dotnet:2.2-runtime AS runtime
WORKDIR /app
COPY --from=build /out ./
ENV NYBUS_ENVIRONMENT=Production
ENV LOGGLY_APIKEY=loggly \
RABBITMQ_HOSTNAME=host.docker.internal \
RABBITMQ_USERNAME=guest \
RABBITMQ_PASSWORD=guest \
RABBITMQ_MESSAGE_LIMIT=
ENV NYBUS_LOGGLY__APIKEY=${LOGGLY_APIKEY} \
NYBUS_Nybus__RabbitMq__Connection__Hostname=${RABBITMQ_HOSTNAME} \
NYBUS_Nybus__RabbitMq__Connection__Username=${RABBITMQ_USERNAME} \
NYBUS_Nybus__RabbitMq__Connection__Password=${RABBITMQ_PASSWORD} \
NYBUS_Nybus__RabbitMq__UnackedMessageCountLimit=${RABBITMQ_MESSAGE_LIMIT}
ENTRYPOINT [ "dotnet", "App.dll" ]
有什么建议吗?
【问题讨论】:
标签: c# docker .net-core environment-variables dockerfile