docker-images/pluie/alpine-apache-fpm
2016-08-12 04:18:48 +02:00
..
install.d manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
pre-init.d manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
.gitignore manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
build manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
Dockerfile manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
files.tar manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
main.sh manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00
README.md manage apache-fpm + fix alpine-symfony 2016-08-12 04:18:48 +02:00

pluie/alpine-apache

Extend pluie/alpine with apache 2.4.23 and php 5.6.24

  • error log are attached to stdout
  • no need port redirection
  • you can use env var at container creation : HTTP_SERVER_NAME (default : docker-site.dev ortherwise edit app/vhost later)
  • you can still use ever your local http & sql server while your container(s) are running

Image Size

  • image ~ 50 MB

ENV variables

 HTTP_SERVER_NAME=apache.docker # apache ServerName  
          WWW_DIR=www           # DocumentRoot relative to volume  
        WWW_INDEX=index.php     # DirectoryIndex
    FIX_OWNERSHIP=1             # 

Inherit ENV variables

        SHENV_CTX=LOCAL         # LOCAL|INT|PROD change context bg color
       SHENV_NAME=Apache        # container name 
      SHENV_COLOR=67            # ANSI EXTENDED COLOR CODE
               TZ=Europe/Paris  # TIMEZONE

Image Volumes

/app directory is a docker volume bind to your app project (silex/symfony etc)

/app/$WWW_DIR is the documentRoot.
put only your entry point and static files to the documentRoot directory, no your app sources (/app directory is design for this).

/app/vhost is your app vhost configuration file (with a serverName directive). by default it use the apache rewrite module to redirect all uri to entry point $WWW_INDEX

/app/              # your application directory
  |
  |---- $WWW_DIR/  # documentRoot
  |
  |---- vhost     # apache app vhost

Image Usage

chdir to your project directory

$ docker run --name apache -it --link=mysql:db1 -v $(pwd):/app pluie/alpine-apache

or

$ docker run --name apache -it --link=mysql:db1 -e HTTP_SERVER_NAME=yourServerName -v $(pwd):/app pluie/alpine-apache

Controling http server

$ docker exec -it apache "httpd -k restart"

for more commands :

$ docker exec -it apache "httpd -h"