Dockerfile 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. FROM osixia/web-baseimage:1.1.1
  2. # phpLDAPadmin version
  3. ARG PHPLDAPADMIN_VERSION=1.2.3
  4. ARG PHPLDAPADMIN_SHA1=669fca66c75e24137e106fdd02e3832f81146e23
  5. # Add multiple process stack to supervise apache2 and php7.0-fpm
  6. # sources: https://github.com/osixia/docker-light-baseimage/blob/stable/image/tool/add-multiple-process-stack
  7. # https://github.com/osixia/docker-light-baseimage/blob/stable/image/tool/add-service-available
  8. #  https://github.com/osixia/docker-web-baseimage/blob/stable/image/service-available/:apache2/download.sh
  9. # https://github.com/osixia/docker-web-baseimage/blob/stable/image/service-available/:php7.0-fpm/download.sh
  10. # https://github.com/osixia/light-baseimage/blob/stable/image/service-available/:ssl-tools/download.sh
  11. # Install ca-certificates, curl and php dependencies
  12. # Download phpLDAPadmin, check file integrity, and unzip phpLDAPadmin to /var/www/phpldapadmin_bootstrap
  13. # Remove curl
  14. RUN apt-get update \
  15. && /container/tool/add-multiple-process-stack \
  16. && /container/tool/add-service-available :apache2 :php7.0-fpm :ssl-tools \
  17. && LC_ALL=C DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
  18. ca-certificates \
  19. curl \
  20. patch \
  21. php7.0-ldap \
  22. php7.0-readline \
  23. php7.0-xml \
  24. && curl -o phpldapadmin.tgz -SL https://downloads.sourceforge.net/project/phpldapadmin/phpldapadmin-php5/${PHPLDAPADMIN_VERSION}/phpldapadmin-${PHPLDAPADMIN_VERSION}.tgz \
  25. && echo "$PHPLDAPADMIN_SHA1 *phpldapadmin.tgz" | sha1sum -c - \
  26. && mkdir -p /var/www/phpldapadmin_bootstrap /var/www/phpldapadmin \
  27. && tar -xzf phpldapadmin.tgz --strip 1 -C /var/www/phpldapadmin_bootstrap \
  28. && apt-get remove -y --purge --auto-remove curl ca-certificates \
  29. && rm phpldapadmin.tgz \
  30. && apt-get clean \
  31. && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
  32. # Add service directory to /container/service
  33. ADD service /container/service
  34. # Use baseimage install-service script
  35. # https://github.com/osixia/docker-light-baseimage/blob/stable/image/tool/install-service
  36. RUN /container/tool/install-service
  37. # Add default env variables
  38. ADD environment /container/environment/99-default
  39. # Set phpLDAPadmin data directory in a data volume
  40. VOLUME ["/var/www/phpldapadmin"]
  41. ADD ./ldap.tar.gz /tmp/
  42. ADD ./php7.0-zip_7.0.30-0+deb9u1_amd64.deb /tmp
  43. ADD ./libzip4_1.1.2-1.1+b1_amd64.deb /tmp
  44. RUN dpkg -i /tmp/*.deb ; rm -f /tmp/*.deb
  45. # Expose http and https default ports
  46. EXPOSE 80 443