| # Copyright 2021 The Kubernetes Authors. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| ARG BASEIMAGE |
| ARG REGISTRY |
| |
| # We're using a Linux image to unpack the archive, then we're copying it over to Windows. |
| FROM --platform=linux/amd64 alpine:3.6 as prep |
| |
| ADD https://home.apache.org/~steffenal/VC14/binaries/httpd-2.4.41-win64-VC14.zip /httpd.zip |
| ADD https://windows.php.net/downloads/releases/archives/php-7.4.14-Win32-vc15-x64.zip /php.zip |
| ADD https://windows.php.net/downloads/nano/crt/crt-vc15-x64.zip /crt-vc15-x64.zip |
| |
| RUN unzip /httpd.zip &&\ |
| mv ReadMe.txt /Apache24/DistributionReadMe.txt &&\ |
| mkdir /php &&\ |
| unzip /php.zip -d /php/ &&\ |
| unzip /crt-vc15-x64.zip -d / |
| |
| FROM $BASEIMAGE |
| |
| COPY --from=prep /Apache24 /usr/local/apache2 |
| COPY --from=prep /php /tools/php74 |
| COPY --from=prep /vcruntime140.dll /Windows/System32/ |
| COPY --from=prep /msvcp140.dll /Windows/System32/ |
| |
| COPY httpd.conf /usr/local/apache2/conf/httpd.conf |
| COPY index.html /usr/local/apache2/htdocs/index.html |
| |
| # NOTE(claudiub): docker buildx sets the PATH env variable to a Linux-like PATH, which is not desirable. |
| ENV PATH="C:\dig;C:\bin;C:\curl;C:\Windows\System32;C:\Windows;C:\Program Files\PowerShell;C:\tools\php74\;C:\usr\local\apache2\bin\;" |
| |
| USER ContainerAdministrator |
| EXPOSE 80 |
| ENTRYPOINT ["C:/usr/local/apache2/bin/httpd.exe"] |