| 1234567891011121314151617181920212223242526272829303132333435363738394041 | FROM microsoft/dotnet:2.1-sdk AS builder
ARG WEBAPI_PROJECT=WebApi
ARG BUILD_CONFIG=Release
ARG CONFIG_DIR=/etc/default/config-files/
COPY ./SiteStatus/ /tmp/backend/
RUN echo "Building ${WEBAPI_PROJECT} in ${BUILD_CONFIG} configuration" && \
    mkdir "${CONFIG_DIR}" &&\
    cd /tmp/backend/ && \
    dotnet restore && \
    mkdir /var/www && \
    cd /tmp/backend/${WEBAPI_PROJECT} && \
    dotnet publish --configuration "${BUILD_CONFIG}" --output /var/www && \
    cp /tmp/backend/${WEBAPI_PROJECT}/appsettings.* "${CONFIG_DIR}" && \
    ln -s /var/www/${WEBAPI_PROJECT}.dll /var/www/__RUN_ME.DLL &&\
    ls /var/www /tmp/backend/SiteStatus/bin/Release/netcoreapp2.1
FROM microsoft/dotnet:2.1-aspnetcore-runtime
ARG CONFIG_DIR=/etc/default/config-files/
RUN rm -rf /var/log/* && \
        mkdir "${CONFIG_DIR}"
COPY ./vars-vars /etc/vars-vars
COPY ./vars-files /etc/vars-files
COPY ./run.sh /run.sh
COPY --from=builder "${CONFIG_DIR}" "${CONFIG_DIR}"
COPY --from=builder /var/www /var/www
EXPOSE 80
VOLUME ["/data/storage"]
CMD ["/run.sh"]
 |