|  | 
| 1 |  | -FROM php:5.6.40-apache | 
|  | 1 | +FROM mcr.microsoft.com/oryx/php:5.6-20190607.1 | 
| 2 | 2 | LABEL maintainer="Azure App Services Container Images <[email protected]>" | 
| 3 | 3 | 
 | 
| 4 |  | -ENV PHP_VERSION 5.6.40 | 
| 5 |  | -COPY apache2.conf /bin/ | 
|  | 4 | +ENV PHP_VERSION 5.6 | 
|  | 5 | + | 
| 6 | 6 | COPY init_container.sh /bin/ | 
| 7 | 7 | COPY hostingstart.html /home/site/wwwroot/hostingstart.html | 
| 8 | 8 | 
 | 
| 9 |  | -RUN a2enmod rewrite expires include deflate | 
| 10 |  | - | 
| 11 |  | -# install the PHP extensions we need | 
| 12 |  | -RUN apt-get update \  | 
| 13 |  | -    && apt-get install -y --no-install-recommends \ | 
| 14 |  | -        libpng-dev \ | 
| 15 |  | -        libjpeg-dev \ | 
| 16 |  | -        libpq-dev \ | 
| 17 |  | -        libmcrypt-dev \ | 
| 18 |  | -        libldap2-dev \ | 
| 19 |  | -        libldb-dev \ | 
| 20 |  | -        libicu-dev \ | 
| 21 |  | -        libgmp-dev \ | 
| 22 |  | -        libmagickwand-dev \ | 
| 23 |  | -        libc-client-dev \ | 
| 24 |  | -        libtidy-dev \ | 
| 25 |  | -        libkrb5-dev \ | 
| 26 |  | -        libxslt-dev \ | 
| 27 |  | -        unixodbc-dev \ | 
| 28 |  | -        openssh-server \ | 
| 29 |  | -        vim \ | 
| 30 |  | -        curl \ | 
| 31 |  | -        wget \ | 
| 32 |  | -        tcptraceroute \ | 
| 33 |  | -    && chmod 755 /bin/init_container.sh \ | 
|  | 9 | +RUN chmod 755 /bin/init_container.sh \ | 
|  | 10 | +    && mkdir -p /home/LogFiles/ \ | 
| 34 | 11 |     && echo "root:Docker!" | chpasswd \ | 
| 35 |  | -    && echo "cd /home" >> /etc/bash.bashrc \ | 
| 36 |  | -    && ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so \ | 
| 37 |  | -    && ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so \ | 
| 38 |  | -    && ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h \ | 
| 39 |  | -    && rm -rf /var/lib/apt/lists/* \ | 
| 40 |  | -    && pecl install imagick-beta \ | 
| 41 |  | -    && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ | 
| 42 |  | -    && docker-php-ext-configure imap --with-kerberos --with-imap-ssl \ | 
| 43 |  | -    && docker-php-ext-configure pdo_odbc --with-pdo-odbc=unixODBC,/usr \ | 
| 44 |  | -    && docker-php-ext-install gd \ | 
| 45 |  | -        mysqli \ | 
| 46 |  | -        opcache \ | 
| 47 |  | -        pdo \ | 
| 48 |  | -        pdo_mysql \ | 
| 49 |  | -        pdo_pgsql \ | 
| 50 |  | -        pgsql \ | 
| 51 |  | -        ldap \ | 
| 52 |  | -        intl \ | 
| 53 |  | -        mcrypt \ | 
| 54 |  | -        gmp \ | 
| 55 |  | -        zip \ | 
| 56 |  | -        bcmath \ | 
| 57 |  | -        mbstring \ | 
| 58 |  | -        pcntl \ | 
| 59 |  | -        calendar \ | 
| 60 |  | -        exif \ | 
| 61 |  | -        gettext \ | 
| 62 |  | -        imap \ | 
| 63 |  | -        tidy \ | 
| 64 |  | -        shmop \ | 
| 65 |  | -        soap \ | 
| 66 |  | -        sockets \ | 
| 67 |  | -        sysvmsg \ | 
| 68 |  | -        sysvsem \ | 
| 69 |  | -        sysvshm \ | 
| 70 |  | -        pdo_odbc \ | 
| 71 |  | -        wddx \ | 
| 72 |  | -        xmlrpc \ | 
| 73 |  | -        xsl \ | 
| 74 |  | -    && docker-php-ext-enable imagick | 
| 75 |  | - | 
| 76 |  | -# install odbc php ext | 
| 77 |  | -RUN apt-get update \ | 
| 78 |  | -  && apt-get install unixodbc-dev | 
| 79 |  | - | 
| 80 |  | -RUN set -x \ | 
| 81 |  | -    && docker-php-source extract \ | 
| 82 |  | -    && cd /usr/src/php/ext/odbc \ | 
| 83 |  | -    && phpize \ | 
| 84 |  | -    && sed -ri 's@^ *test +"\$PHP_.*" *= *"no" *&& *PHP_.*=yes *$@#&@g' configure \ | 
| 85 |  | -    && ./configure --with-unixODBC=shared,/usr \ | 
| 86 |  | -    && docker-php-ext-install odbc | 
|  | 12 | +    && echo "cd /home/site/wwwroot" >> /etc/bash.bashrc \ | 
|  | 13 | +    && ln -s /home/site/wwwroot /var/www/html \ | 
|  | 14 | +    && mkdir -p /opt/startup | 
| 87 | 15 | 
 | 
| 88 |  | -RUN   \ | 
| 89 |  | -   rm -f /var/log/apache2/* \ | 
| 90 |  | -   && rmdir /var/lock/apache2 \ | 
| 91 |  | -   && rmdir /var/run/apache2 \ | 
| 92 |  | -   && rmdir /var/log/apache2 \ | 
| 93 |  | -   && chmod 777 /var/log \ | 
| 94 |  | -   && chmod 777 /var/run \ | 
| 95 |  | -   && chmod 777 /var/lock \ | 
| 96 |  | -   && chmod 777 /bin/init_container.sh \ | 
| 97 |  | -   && cp /bin/apache2.conf /etc/apache2/apache2.conf \ | 
| 98 |  | -   && rm -rf /var/www/html \ | 
| 99 |  | -   && rm -rf /var/log/apache2 \ | 
| 100 |  | -   && mkdir -p /home/LogFiles \ | 
| 101 |  | -   && ln -s /home/site/wwwroot /var/www/html \ | 
| 102 |  | -   && ln -s /home/LogFiles /var/log/apache2  | 
| 103 |  | - | 
| 104 |  | -RUN { \ | 
| 105 |  | -                echo 'opcache.memory_consumption=128'; \ | 
| 106 |  | -                echo 'opcache.interned_strings_buffer=8'; \ | 
| 107 |  | -                echo 'opcache.max_accelerated_files=4000'; \ | 
| 108 |  | -                echo 'opcache.revalidate_freq=60'; \ | 
| 109 |  | -                echo 'opcache.fast_shutdown=1'; \ | 
| 110 |  | -                echo 'opcache.enable_cli=1'; \ | 
| 111 |  | -    } > /usr/local/etc/php/conf.d/opcache-recommended.ini | 
| 112 |  | - | 
| 113 |  | -RUN { \ | 
| 114 |  | -                echo 'error_log=/var/log/apache2/php-error.log'; \ | 
| 115 |  | -                echo 'display_errors=Off'; \ | 
| 116 |  | -                echo 'log_errors=On'; \ | 
| 117 |  | -                echo 'display_startup_errors=Off'; \ | 
| 118 |  | -                echo 'date.timezone=UTC'; \ | 
| 119 |  | -    } > /usr/local/etc/php/conf.d/php.ini | 
|  | 16 | +# configure startup | 
|  | 17 | +COPY sshd_config /etc/ssh/ | 
|  | 18 | +COPY ssh_setup.sh /tmp | 
|  | 19 | +RUN mkdir -p /opt/startup \ | 
|  | 20 | +   && chmod -R +x /opt/startup \ | 
|  | 21 | +   && chmod -R +x /tmp/ssh_setup.sh \ | 
|  | 22 | +   && (sleep 1;/tmp/ssh_setup.sh 2>&1 > /dev/null) \ | 
|  | 23 | +   && rm -rf /tmp/* | 
| 120 | 24 | 
 | 
| 121 | 25 | ENV PORT 8080 | 
| 122 | 26 | ENV SSH_PORT 2222 | 
| 123 | 27 | EXPOSE 2222 8080 | 
| 124 | 28 | COPY sshd_config /etc/ssh/ | 
| 125 | 29 | 
 | 
| 126 |  | -ENV APACHE_RUN_USER www-data | 
| 127 |  | - | 
| 128 |  | -# setup default site | 
| 129 |  | -RUN mkdir -p /opt/startup | 
| 130 |  | -COPY generateStartupCommand.sh /opt/startup/generateStartupCommand.sh | 
| 131 |  | -RUN chmod 755 /opt/startup/generateStartupCommand.sh | 
| 132 |  | - | 
| 133 | 30 | ENV WEBSITE_ROLE_INSTANCE_ID localRoleInstance | 
| 134 | 31 | ENV WEBSITE_INSTANCE_ID localInstance | 
| 135 | 32 | ENV PATH ${PATH}:/home/site/wwwroot | 
| 136 | 33 | 
 | 
| 137 |  | -WORKDIR /var/www/html | 
|  | 34 | +RUN sed -i 's!ErrorLog ${APACHE_LOG_DIR}/error.log!ErrorLog /dev/stderr!g' /etc/apache2/apache2.conf  | 
|  | 35 | +RUN sed -i 's!User ${APACHE_RUN_USER}!User www-data!g' /etc/apache2/apache2.conf  | 
|  | 36 | +RUN sed -i 's!User ${APACHE_RUN_GROUP}!Group www-data!g' /etc/apache2/apache2.conf  | 
| 138 | 37 | 
 | 
| 139 |  | -ENTRYPOINT ["/bin/init_container.sh"] | 
|  | 38 | +RUN { \ | 
|  | 39 | +   echo 'DocumentRoot /home/site/wwwroot'; \ | 
|  | 40 | +   echo 'DirectoryIndex default.htm default.html index.htm index.html index.php hostingstart.html'; \ | 
|  | 41 | +   echo 'ServerName localhost'; \ | 
|  | 42 | +   echo 'CustomLog /dev/stdout combined'; \ | 
|  | 43 | +} >> /etc/apache2/apache2.conf | 
|  | 44 | + | 
|  | 45 | +WORKDIR /home/site/wwwroot | 
| 140 | 46 | 
 | 
|  | 47 | +ENTRYPOINT ["/bin/init_container.sh"] | 
0 commit comments