ADD alpine-minirootfs-3.20.3-x86_64.tar.gz / # buildkit |
CMD ["/bin/sh"] |
ENV APP_UID=1654 ASPNETCORE_HTTP_PORTS=8080 DOTNET_RUNNING_IN_CONTAINER=true DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true |
RUN /bin/sh -c apk add --upgrade --no-cache ca-certificates-bundle libgcc libssl3 libstdc++ # buildkit |
RUN /bin/sh -c addgroup --gid=$APP_UID app && adduser --uid=$APP_UID --ingroup=app --disabled-password app # buildkit |
ENV DOTNET_VERSION=9.0.0 |
RUN /bin/sh -c wget -O dotnet.tar.gz https://dotnetcli.azureedge.net/dotnet/Runtime/$DOTNET_VERSION/dotnet-runtime-$DOTNET_VERSION-linux-musl-x64.tar.gz && dotnet_sha512='9c33d73a898fa9b4e84ae1844468b69086979f7c2c8ea6b32db0fea62a4014513cea0619025f9edb23e67ab4ae4e2f2725d1d9bb892858bba7dfe8ed17aee799' && echo "$dotnet_sha512 dotnet.tar.gz" | sha512sum -c - && mkdir -p /usr/share/dotnet && tar -oxzf dotnet.tar.gz -C /usr/share/dotnet && rm dotnet.tar.gz && ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet # buildkit |
ENV ASPNET_VERSION=9.0.0 |
RUN /bin/sh -c wget -O aspnetcore.tar.gz https://dotnetcli.azureedge.net/dotnet/aspnetcore/Runtime/$ASPNET_VERSION/aspnetcore-runtime-$ASPNET_VERSION-linux-musl-x64.tar.gz && aspnetcore_sha512='09e3709664f099b4116f8a2aac4b365247d11d0d19ecae262949de38fa9d41cc6c521a67e5b1ffecd63c610c1e9b41459bfb18f62b9d9d3b5176e3856e9ad35b' && echo "$aspnetcore_sha512 aspnetcore.tar.gz" | sha512sum -c - && tar -oxzf aspnetcore.tar.gz -C /usr/share/dotnet ./shared/Microsoft.AspNetCore.App && rm aspnetcore.tar.gz # buildkit |
ARG CERT_PASSWORD_ARG=3vo3rmb5DBJXsryjMfJsrpjbKsbj8B |
ENV CERT_PASSWORD=3vo3rmb5DBJXsryjMfJsrpjbKsbj8B |
WORKDIR /App |
RUN |1 CERT_PASSWORD_ARG=3vo3rmb5DBJXsryjMfJsrpjbKsbj8B /bin/sh -c apk update && apk upgrade --available && apk add ca-certificates && apk add tzdata && apk add envsubst && apk add bash && mkdir /config && mkdir -p /usr/local/share/ca-certificates/ # buildkit |
COPY /App/out . # buildkit |
COPY /config /config # buildkit |
ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 |
ENV ASPNETCORE_ENVIRONMENT=Production |
ENV ASPNETCORE_URLS=http://+:80;https://+:443 |
ENV ASPNETCORE_Kestrel__Certificates__Default__Path=/usr/local/share/ca-certificates/aspnetapp.crt |
ENV ASPNETCORE_Kestrel__Certificates__Default__KeyPath=/usr/local/share/ca-certificates/aspnetapp.key |
ENV ASPNETCORE_Kestrel__Certificates__Default__Password=3vo3rmb5DBJXsryjMfJsrpjbKsbj8B |
ENV JOB_SCHEDULE=0 0/30 * * * ? |
ENV MOVIE_API_URL=https://api.themoviedb.org/ |
ENV MOVIE_API_KEY= |
ENV MOVIE_IMAGE_URL=https://image.tmdb.org |
RUN |1 CERT_PASSWORD_ARG=3vo3rmb5DBJXsryjMfJsrpjbKsbj8B /bin/sh -c chown -R app:app /App/* && cp /config/aspnetapp.pem $ASPNETCORE_Kestrel__Certificates__Default__Path && cp /config/aspnetapp.key $ASPNETCORE_Kestrel__Certificates__Default__KeyPath && chmod 755 $ASPNETCORE_Kestrel__Certificates__Default__Path && chmod +x $ASPNETCORE_Kestrel__Certificates__Default__Path && chown app:app $ASPNETCORE_Kestrel__Certificates__Default__Path && cat $ASPNETCORE_Kestrel__Certificates__Default__Path >> /etc/ssl/certs/ca-certificates.crt && chmod 755 $ASPNETCORE_Kestrel__Certificates__Default__KeyPath && chmod +x $ASPNETCORE_Kestrel__Certificates__Default__KeyPath && chown app:app $ASPNETCORE_Kestrel__Certificates__Default__KeyPath && rm -rf /tmp && mkdir /tmp && chmod 755 /tmp && chown app:app /tmp && update-ca-certificates && rm -rf /config && rm -rf /var/cache/apk/* && mkdir /data && chmod 755 /data && cat > /data/telebilbaoEpg.db && chmod 777 /data/telebilbaoEpg.db && chown -R app:app /data/* # buildkit |
ENTRYPOINT ["/bin/sh" "-c" "echo \"$(envsubst '${MOVIE_API_URL},${MOVIE_API_KEY},${MOVIE_IMAGE_URL},${$JOB_SCHEDULE}' < appsettings.json)\" > appsettings.json \t\t\t&& dotnet \"TelebilbaoEpg.dll\""] |
EXPOSE map[80/tcp:{}] |
EXPOSE map[443/tcp:{}] |