Releases: jdeathe/centos-ssh-apache-php-fcgi
centos-6-1.10.0
CentOS-6 6.9 x86_64 - Apache / PHP-CGI (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates image source to release 1.10.0.
- Fixes issue with missing APACHE_SSL_* environment variables for make,scmi and systemd.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.1.10.0.tar.xz | docker load
centos-6-1.9.0
CentOS-6 6.8 x86_64 - Apache / PHP-CGI (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates image source to release 1.9.0.
- Fixes issue with app specific
httpdconfiguration requiring theetc/php.ddirectory to exist. - Adds default Apache modules appropriate for Apache 2.4/2.2 in the bootstrap script for the unlikely case where the values in the environment and configuration file defaults are both unset.
- Updates
README.mdwith details of the SCMI install example's prerequisite step of either pulling or loading the image. - Updates
httpdandmod_sslpackages. - Fixes noisy certificate generation output in logs during bootstrap when
APACHE_MOD_SSL_ENABLEDistrue. - Changes
APACHE_SERVER_ALIASto a default empty value forMakefile,scmiandsystemdtemplates which is the existingDockerfiledefault. - Changes default
APACHE_SERVER_NAMEto unset and use the container's hostname for the Apache ServerName. - Fixes
scmiinstall/uninstall examples and DockerfileLABELinstall/uninstall templates to prevent theX-Service-UIDheader being populated with the hostname of the ephemeral container used to runscmi. - Adds feature to allow both
APACHE_SERVER_NAMEandAPACHE_SERVER_ALIASto contain the{{HOSTNAME}}placeholder which is replaced on startup with the container's hostname. - Removes environment variable re-mappings that are no longer in use:
APP_HOME_DIR,APACHE_SUEXEC_USER_GROUP,DATE_TIMEZONE,SERVICE_USER,SUEXECUSERGROUP,SERVICE_UID. - Changes Apache configuration so that
NameVirtualHostandListenare separated out fromVirtualHost. - Adds further information on the use of
watchto monitorserver-status. - Changes the auto-generated self-signed certificate to include hosts from
APACHE_SERVER_NAMEandAPACHE_SERVER_ALIASvia subjectAltName.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.1.9.0.tar.xz | docker load
centos-6-1.8.1
CentOS-6 6.8 x86_64 - Apache / PHP-CGI (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates image source to release 1.8.2 including required Makefile and environment changes.
- Adds test cases for FastCGI operation.
- Adds a Change Log.
- Adds support for semantic release tag version numbers.
- Changes description to PHP-CGI instead of PHP.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.1.8.1.tar.xz | docker load
centos-6-1.8.0
CentOS-6 6.8 x86_64 - Apache / PHP-CGI (FastCGI) / PHP memcached / PHP APC.
Release changes
- Changes source to release 1.8.0.
- Adds installation of php-hello-world app from external release source.
- Adds UseCanonicalName On httpd setting.
- Adds reduced Dockerfile build layers for installing PHP app package.
- Adds startup script
/usr/sbin/httpd-startupused to initialise environment variables; paths that are relative are expanded to absolute and the hostname placeholder is replaced with the container's hostname. This logic has been moved out of the Apache wrapper script so it can be set globally and made available when accessing the container interactively. - Adds package php-hello-world 0.4.0.
- Adds update browser screenshots to documentation.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.8.0.tar.xz | docker load
centos-6-1.7.2
CentOS-6 6.8 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
Release changes
- Adds Makefile help target with usage instructions.
- Splits up the Makefile targets into internal and public types.
- Adds correct
scmipath in usage instructions. - Changes
PACKAGE_PATHtoDIST_PATHin line with the Makefile environment include. Not currently used byscmibut changing for consistency. - Changes
DOCKER_CONTAINER_PARAMETERS_APPENDtoDOCKER_CONTAINER_OPTSfor usability. This is a potentially breaking change that could affect systemd service configurations if using the Environment variable in a drop-in customisation. However, if using the systemd template unit-files it should be pinned to a specific version tag. The Makefile should only be used for development/testing and usage inscmiis internal only as the--setoptparameter is used to build up the optional container parameters. - Removes X-Fleet section from template unit-file.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.7.2.tar.xz | docker load
centos-6-1.7.1
CentOS-6 6.8 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates source to release 1.7.2.
- Replaces
PACKAGE_PATHwithDIST_PATHin Makefile. The package output directory created will be./distinstead of./packages/jdeathe. - Apache VirtualHost configuration has been simplified to only require a single certificate bundle file (
/etc/pki/tls/certs/localhost.crt) in PEM format. - Adds
APACHE_SSL_CERTIFICATEto allow the operator to add a PEM, (and optionally base64), encoded certificate bundle (inclusive of key + certificate + intermediate certificate. Base64 encoding of the PEM file contents is recommended. - Adds
APACHE_SSL_CIPHER_SUITEto allow the operator to define a custom CipherSuite. - Adds
APACHE_SSL_PROTOCOLto allow the operator to add/remove SSL protocol support. - Adds usage instructions for
APACHE_SSL_CERTIFICATE,APACHE_SSL_CIPHER_SUITEandAPACHE_SSL_PROTOCOL. - Removes requirement to pass php package name to the php-wrapper - feature was undocumented and unused.
- Removes MySQL legacy-linked environment variable population and handling.
- Adds correct path to
scmiin image metadata to allowatomic installto complete successfully.
Known Issues
The Makefile install (create) target fails when a APACHE_SSL_CERTIFICATE is set as multiline formatted string in the environment as follows.
$ export APACHE_SSL_CERTIFICATE="$(
< "/etc/pki/tls/certs/localhost.crt"
)"
The recommended way to set the certificate value is to base64 encode it as a string value.
Mac OSX:
$ export APACHE_SSL_CERTIFICATE="$(
base64 -i "/etc/pki/tls/certs/localhost.crt"
)"
Linux:
$ export APACHE_SSL_CERTIFICATE="$(
base64 -w 0 -i "/etc/pki/tls/certs/localhost.crt"
)"
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.7.1.tar.xz | docker load
centos-6-1.7.0
CentOS-6 6.8 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates source tag to 1.7.1.
- Adds
scmiand metadata for atomic install/uninstall usage. - Removes deprecated run.sh and build.sh helper scripts. These have been replaced with the make targets
make(ormake build) andmake install start. - Removes support for and documentation on configuration volumes. These can still be implemented by making use of the
DOCKER_CONTAINER_PARAMETERS_APPENDenvironment variable or using thescmioption--setoptto append additional docker parameters to the default docker create template. - Changes systemd template unit-file environment variable for
DOCKER_IMAGE_PACKAGE_PATHnow defaults to the path/var/opt/scmi/packagesinstead of/var/services-packageshowever this can be reverted back using thescmioption--env='DOCKER_IMAGE_PACKAGE_PATH="/var/services-packages"'if necessary. - Replaces
HTTPDwithAPACHE_MPM; instead of needing to supply the path to the correct binaryAPACHE_MPMtakes the Apache MPM name (i.e.preforkorworker). - Replaces
SERVICE_UIDwithAPACHE_HEADER_X_SERVICE_UID. - Default to using the
{{HOSTNAME}}placeholder for the value ofAPACHE_HEADER_X_SERVICE_UID. - Adds the
/usr/sbin/httpd-wrapperscript to make the wrapper more robust and simpler to maintain that the one-liner that was added directly using the supervisord program command. - Adds Lockfile handling into the
/usr/sbin/httpd-bootstrapscript making it more robust and simpler to maintain. - Adds a minor correction to a couple of the README
scmiexamples. - Reviewed quoting of environment variables used in Apache include templates and in the bootstrap script.
- To be consistent with other
jdeathe/centos-sshbased containers the default group used in the docker name has been changed topool-1fromapp-1. - Adds a niceness value of 10 to the httpd process in the httpd-wrapper script.
- Stops header X-Service-UID being set if
APACHE_HEADER_X_SERVICE_UIDis empty. - Adds support for defining
APACHE_CUSTOM_LOG_LOCATIONandAPACHE_ERROR_LOG_LOCATIONpaths that are relative toAPACHE_CONTENT_ROOT. This allows for a simplified configuration. - Prevents
scmiinstaller publishing port 443 ifAPACHE_MOD_SSL_ENABLEDis false. - Adds a fix for the default value of
APACHE_HEADER_X_SERVICE_UIDwhen usingscmi. - Adds method to prevent exposed ports being published when installing using the embedded
scmiinstallation method or the Makefile's create/run template. e.g. To prevent port8443getting published set the value of the environment variableDOCKER_PORT_MAP_TCP_8443toNULL - Disables publishing port
8443by default in scmi/make/systemd install templates.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.7.0.tar.xz | docker load
centos-6-1.6.0
CentOS-6 6.8 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates source tag to 1.6.1.
- Relocates VirtualHost configuration out of app package and into the container package.
- Adds simplified php-wrapper script now that configuration is handled by the php.d/*ini scan directory includes.
- Adds restructured httpd configuration. Replaced the single template VirtualHost that was used to generate an SSL copy using the bootstrap script with 2 basic VirtualHost definitions. The majority of configuration is now pulled in from the scan directory
/etc/services-config/httpd/conf.d/*.confwhere core container configuration is prefixed with00-. App package configuration (/var/www/app/etc/httpd/conf.d/*.conf) files are added to this directory as part of the container build and prefixed with50-to indicate their source and influence load order. - Adds the PHP Info script into the demo app package the source instead of generating it as part of the container build.
- Adds an increased MaxKeepAliveRequests value of 200 from the default 100.
- Removes some unused configuration scripts.
- Fixes an issue with the php-wrapper script not loading in the configuration environment variables from
/etc/httpd-bootstrap.conf. - Adds minor improvement to the demo app's index.php to prevent errors if either the PHP Info or APC Info scripts are unavailable.
- The placeholder
{{HOSTNAME}}will be replaced with the system (container) hostname when used in the value of the environment variableSERVICE_UID. - Adds default of
expose_php = Offeven if the user configuration is not loaded. - Adds
PACKAGE_PATHenvironment variable to the bootstrap. - Loading of app PHP configuration is now carried out in the bootstrap before starting
httpd(Apache) and not as an image build time step. This is necessary to allow the environment variables to be replaced before being loaded by the fcgid php-wrapper script where the environment is cleared down. - Adds loading of Apache app package configuration files into the bootstrap.
- Adds enable/disable of the SSL VirtualHost configuration into the bootstrap.
- Removes configuration files now pulled in from the app package's configuration.
- Adds fix for incorrect binary defined in the latest systemd template unit-file and in the makefile environment definition.
Deprecation notice
build.shandrun.share to be removed in the1.7.0release. They have been replaced withmake allormake build install start- Support for configuration volumes will be removed in the next release. Configuration should now be possible without requirement for a configuration data volume by using the environment variables. If a specific case is required then a data volume can still be used but will not be handled by the installation and/or systemd helper scripts.
- The systemd template unit-file
apache-php.app-1.1.1@8080.servicewill be removed in the next release. This has been replaced withapache-php.app-1@.serviceand etcd registration can be enabled with the companion service unit file templateapache-php.app-1.register@.service.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.6.0.tar.xz | docker load
centos-6-1.5.0
CentOS-6 6.8 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
Release changes
- Updates source tag to 1.5.0. (i.e. Updates CentOS to 6.8).
- Adds
APACHE_OPERATING_MODEto the systemd run command. - Disables the default Apache DocumentRoot
/var/www/html. - Disables the
TRACEmethod in the VirtualHost configuration. - Updates examples in README.
- Updates SSL configuration to use 2048 bit key size to reduce CPU usage.
- Enables
SSLSessionCachein the VirtualHost configuration. - Updates SSL configuration to use Mozilla recommended cipher suites and order.
- Maintenance: Use single a line ENV to set all environment variables.
- Fixes an issue with log paths being incorrect due to
APACHE_CONTENT_ROOTbeing undefined. - Removes use of "AllowOverride All" in the VirtualHost configuration when no .htaccess exists in the DocumentRoot path. This would otherwise log the following error: "(13)Permission denied: /var/www/app/public_html/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable"
- Adds Makefile to replace build.sh and run.sh
- Updates systemd template unit-files.
- Updates and relocates bootstrap script.
- Changes supervisord configuration and adds improvements to bootstrap reliability.
Deprecation notice
build.shandrun.share to be removed in the next release. They have been replaced withmake allormake build install start- Support for configuration volumes will be removed in the next release. Configuration should now be possible without requirement for a configuration data volume by using the environment variables. If a specific case is required then a data volume can still be used but will not be handled by the installation and/or systemd helper scripts.
- The systemd template unit-file
apache-php.app-1.1.1@8080.servicewill be removed in the next release. This has been replaced withapache-php.app-1@.serviceand etcd registration can be enabled with the companion service unit file templateapache-php.app-1.register@.service.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.5.0.tar.xz | docker load
centos-6-1.4.5
CentOS-6 6.7 x86_64 - Apache / PHP (FastCGI) / PHP memcached / PHP APC.
- Updates source tag to 1.4.5.
- Removes files that are available in the upstream repository and not used by this
Dockerfile.- Note: the php-wrapper script is now maintained in the upstream source.
- Updates
README.mdto reflect the files being available in the upstream repository.
Download then load the docker image using:
$ xz -dc centos-ssh-apache-php-fcgi.centos-6-1.4.5.tar.xz | docker load