FROM microsoft/dotnet:2.2-runtime AS base WORKDIR /app WORKDIR /src # Install pre-requisites for building and installing Ignite ODBC Driver RUN apt-get update \ && apt-get install -y gcc g++ make automake autotools-dev libtool m4 libssl1.0-dev unixodbc-dev unixodbc-bin unzip \ && apt-get clean -y # Download and unzip Ignite binary release #ADD http://apache.mirrors.hoobly.com/ignite/2.7.0/apache-ignite-2.7.0-bin.zip /src/ COPY apache-ignite-2.7.0-bin.zip . RUN unzip -q /src/apache-ignite-2.7.0-bin.zip \ && rm /src/apache-ignite-2.7.0-bin.zip # Build Ignite ODBC Driver ARG IGNITE_HOME=/src/apache-ignite-2.7.0-bin WORKDIR /src/apache-ignite-2.7.0-bin/platforms/cpp RUN libtoolize \ && aclocal \ && autoheader \ && automake --add-missing \ && autoreconf \ && ./configure --enable-odbc --disable-core --disable-node \ && make \ && make install # Install Ignite ODBC Driver RUN apt-get update \ && apt-get install -y unixodbc \ && apt-get clean -y \ && odbcinst -i -d -f /src/apache-ignite-2.7.0-bin/platforms/cpp/odbc/install/ignite-odbc-install.ini FROM microsoft/dotnet:2.2-sdk AS build WORKDIR /src COPY IgniteGarbledDataReproducer/IgniteGarbledDataReproducer.csproj IgniteGarbledDataReproducer/ RUN dotnet restore IgniteGarbledDataReproducer/IgniteGarbledDataReproducer.csproj COPY . . WORKDIR /src/IgniteGarbledDataReproducer RUN dotnet build IgniteGarbledDataReproducer.csproj -c Release -o /app FROM build AS publish RUN dotnet publish IgniteGarbledDataReproducer.csproj -c Release -o /app FROM base AS final WORKDIR /app COPY --from=publish /app . ENTRYPOINT ["dotnet", "IgniteGarbledDataReproducer.dll"]